Subversion Repositories DevTools

Rev

Rev 5513 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3926 dpurdie 1
--------------------------------------------------------
5924 dpurdie 2
--  File created - Thursday-July-14-2016   
3926 dpurdie 3
--------------------------------------------------------
4534 dpurdie 4
--------------------------------------------------------
5
--  DDL for Type DEPMGR_NUMBER_TAB_T
6
--------------------------------------------------------
7
 
5924 dpurdie 8
  CREATE OR REPLACE TYPE "DEPLOYMENT_MANAGER"."DEPMGR_NUMBER_TAB_T" as TABLE of NUMBER
4534 dpurdie 9
 
10
/
11
--------------------------------------------------------
12
--  DDL for Type SPLIT_TBL
13
--------------------------------------------------------
14
 
5924 dpurdie 15
  CREATE OR REPLACE TYPE "DEPLOYMENT_MANAGER"."SPLIT_TBL" as table of varchar2(32767)
4534 dpurdie 16
 
17
/
18
--------------------------------------------------------
19
--  DDL for Sequence SEQ_ARTICLE_ID
20
--------------------------------------------------------
21
 
5924 dpurdie 22
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_ARTICLE_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 10000 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 23
--------------------------------------------------------
24
--  DDL for Sequence SEQ_BASE_ENV_ID
25
--------------------------------------------------------
26
 
5924 dpurdie 27
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_BASE_ENV_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 89928 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 28
--------------------------------------------------------
29
--  DDL for Sequence SEQ_BOM_ID
30
--------------------------------------------------------
31
 
5924 dpurdie 32
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_BOM_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 89641 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 33
--------------------------------------------------------
34
--  DDL for Sequence SEQ_BOM_NAME_ID
35
--------------------------------------------------------
36
 
5924 dpurdie 37
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_BOM_NAME_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1789 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 38
--------------------------------------------------------
39
--  DDL for Sequence SEQ_BRANCH_ID
40
--------------------------------------------------------
41
 
5924 dpurdie 42
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_BRANCH_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 5481 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 43
--------------------------------------------------------
44
--  DDL for Sequence SEQ_HARDWARE_NAME_ID
45
--------------------------------------------------------
46
 
5924 dpurdie 47
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_HARDWARE_NAME_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 61 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 48
--------------------------------------------------------
49
--  DDL for Sequence SEQ_MSG_ID
50
--------------------------------------------------------
51
 
5924 dpurdie 52
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_MSG_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 462 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 53
--------------------------------------------------------
54
--  DDL for Sequence SEQ_NODE_ID
55
--------------------------------------------------------
56
 
5924 dpurdie 57
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_NODE_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 189105 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 58
--------------------------------------------------------
59
--  DDL for Sequence SEQ_OS_ID
60
--------------------------------------------------------
61
 
5924 dpurdie 62
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_OS_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 195445 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 63
--------------------------------------------------------
64
--  DDL for Sequence SEQ_PROC_ID
65
--------------------------------------------------------
66
 
5924 dpurdie 67
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_PROC_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1541 CACHE 20 ORDER  NOCYCLE ;
68
  GRANT ALTER, SELECT ON "DEPLOYMENT_MANAGER"."SEQ_PROC_ID" TO "RELEASE_MANAGER";
4534 dpurdie 69
--------------------------------------------------------
70
--  DDL for Sequence SEQ_PROJ_ID
71
--------------------------------------------------------
72
 
5924 dpurdie 73
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_PROJ_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 921 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 74
--------------------------------------------------------
75
--  DDL for Sequence SEQ_STATE_ID
76
--------------------------------------------------------
77
 
5924 dpurdie 78
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_STATE_ID"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1661 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 79
--------------------------------------------------------
80
--  DDL for Sequence SEQ_UNIT_TESTS
81
--------------------------------------------------------
82
 
5924 dpurdie 83
   CREATE SEQUENCE  "DEPLOYMENT_MANAGER"."SEQ_UNIT_TESTS"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 541 CACHE 20 ORDER  NOCYCLE ;
4534 dpurdie 84
--------------------------------------------------------
85
--  DDL for Table ACTION_TRAIL
86
--------------------------------------------------------
87
 
5924 dpurdie 88
  CREATE TABLE "DEPLOYMENT_MANAGER"."ACTION_TRAIL" 
4534 dpurdie 89
   (	"ACTION_STAMP" DATE, 
90
	"USER_ID" NUMBER, 
91
	"ACTION_EVENT" NUMBER, 
5924 dpurdie 92
	"METHOD_CALL" VARCHAR2(4000 BYTE), 
93
	"ACTION_SCRIPT" VARCHAR2(4000 BYTE), 
94
	"ACTION_DESCRIPTION" VARCHAR2(4000 BYTE)
95
   ) SEGMENT CREATION IMMEDIATE 
96
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
97
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
98
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
99
  TABLESPACE "RELEASEM_DATA" ;
100
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."ACTION_TRAIL" TO "DM_READONLY";
101
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."ACTION_TRAIL" TO "MS_READONLY";
102
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."ACTION_TRAIL" TO "DEPLOYMENT_MANAGER_READ";
103
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."ACTION_TRAIL" TO "CODE_INSPECTION_READ";
4534 dpurdie 104
--------------------------------------------------------
105
--  DDL for Table BASE_ENV
106
--------------------------------------------------------
107
 
5924 dpurdie 108
  CREATE TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" 
4534 dpurdie 109
   (	"BASE_ENV_ID" NUMBER, 
110
	"BOS_ID" NUMBER, 
5924 dpurdie 111
	"BASE_ENV_NAME" VARCHAR2(50 BYTE), 
4534 dpurdie 112
	"OLD_BASE_ENV_ID" NUMBER, 
113
	"BOM_ID" NUMBER
5924 dpurdie 114
   ) SEGMENT CREATION IMMEDIATE 
115
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
116
  STORAGE(INITIAL 983040 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
117
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
118
  TABLESPACE "RELEASEM_DATA" ;
119
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV" TO "DM_READONLY";
120
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV" TO "MS_READONLY";
121
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV" TO "DEPLOYMENT_MANAGER_READ";
122
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV" TO "RELEASE_MANAGER";
123
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV" TO "CODE_INSPECTION_READ";
4534 dpurdie 124
--------------------------------------------------------
125
--  DDL for Table BASE_ENV_CONTENTS
126
--------------------------------------------------------
127
 
5924 dpurdie 128
  CREATE TABLE "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" 
4534 dpurdie 129
   (	"BASE_ENV_ID" NUMBER, 
130
	"PROD_ID" NUMBER, 
5924 dpurdie 131
	"BASE_ENV_COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 132
	"SEQ_NUM" NUMBER, 
5924 dpurdie 133
	"IS_NODE_SPEC" VARCHAR2(2 BYTE), 
134
	"NOT_XML" VARCHAR2(2 BYTE)
135
   ) SEGMENT CREATION IMMEDIATE 
136
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
137
  STORAGE(INITIAL 29360128 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
138
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
139
  TABLESPACE "RELEASEM_DATA" ;
140
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" TO "DM_READONLY";
141
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" TO "MS_READONLY";
142
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" TO "DEPLOYMENT_MANAGER_READ";
143
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" TO "RELEASE_MANAGER";
144
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 145
--------------------------------------------------------
146
--  DDL for Table BOMS
147
--------------------------------------------------------
148
 
5924 dpurdie 149
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOMS" 
4534 dpurdie 150
   (	"BOM_ID" NUMBER, 
151
	"BRANCH_ID" NUMBER, 
152
	"BOM_NAME_ID" NUMBER, 
5924 dpurdie 153
	"BOM_VERSION" VARCHAR2(4000 BYTE), 
154
	"IS_REJECTED" CHAR(1 BYTE), 
155
	"IS_READONLY" CHAR(1 BYTE), 
156
	"IS_HIDDEN" CHAR(1 BYTE), 
157
	"BOM_COMMENTS" VARCHAR2(4000 BYTE), 
158
	"BOM_LIFECYCLE" VARCHAR2(4000 BYTE), 
4534 dpurdie 159
	"OLD_BOM_ID" NUMBER, 
160
	"PARENT_BOM_ID" NUMBER, 
161
	"RTAG_ID_FK" NUMBER, 
5924 dpurdie 162
	"PDF_ATTACHMENT_PATH" VARCHAR2(4000 BYTE)
163
   ) SEGMENT CREATION IMMEDIATE 
164
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
165
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
166
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
167
  TABLESPACE "RELEASEM_DATA" ;
168
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOMS" TO "DM_READONLY";
169
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOMS" TO "MS_READONLY";
170
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOMS" TO "DEPLOYMENT_MANAGER_READ";
171
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."BOMS" TO "RELEASE_MANAGER";
172
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOMS" TO "CODE_INSPECTION_READ";
4534 dpurdie 173
--------------------------------------------------------
5924 dpurdie 174
--  DDL for Table BOM_ATTACHMENTS
175
--------------------------------------------------------
176
 
177
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_ATTACHMENTS" 
178
   (	"BOM_ID" NUMBER, 
179
	"NAME" VARCHAR2(400 BYTE), 
180
	"LENGTH" NUMBER, 
181
	"CONTENTTYPE" VARCHAR2(100 BYTE), 
182
	"DATA" BLOB
183
   ) SEGMENT CREATION IMMEDIATE 
184
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
185
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
186
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
187
  TABLESPACE "RELEASEM_DATA" 
188
 LOB ("DATA") STORE AS BASICFILE (
189
  TABLESPACE "RELEASEM_DATA" ENABLE STORAGE IN ROW CHUNK 8192 RETENTION 
190
  NOCACHE LOGGING 
191
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
192
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)) ;
193
--------------------------------------------------------
4534 dpurdie 194
--  DDL for Table BOM_CONTENTS
195
--------------------------------------------------------
196
 
5924 dpurdie 197
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_CONTENTS" 
4534 dpurdie 198
   (	"BOM_ID" NUMBER, 
199
	"NODE_ID" NUMBER, 
200
	"SEQ_NUM" NUMBER
5924 dpurdie 201
   ) SEGMENT CREATION IMMEDIATE 
202
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
203
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
204
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
205
  TABLESPACE "RELEASEM_DATA" ;
206
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_CONTENTS" TO "DM_READONLY";
207
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_CONTENTS" TO "MS_READONLY";
208
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_CONTENTS" TO "DEPLOYMENT_MANAGER_READ";
209
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."BOM_CONTENTS" TO "RELEASE_MANAGER";
210
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_CONTENTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 211
--------------------------------------------------------
212
--  DDL for Table BOM_NAMES
213
--------------------------------------------------------
214
 
5924 dpurdie 215
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_NAMES" 
4534 dpurdie 216
   (	"BOM_NAME_ID" NUMBER, 
5924 dpurdie 217
	"BOM_NAME" VARCHAR2(255 BYTE)
218
   ) SEGMENT CREATION IMMEDIATE 
219
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
220
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
221
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
222
  TABLESPACE "RELEASEM_DATA" ;
223
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NAMES" TO "DM_READONLY";
224
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NAMES" TO "MS_READONLY";
225
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NAMES" TO "DEPLOYMENT_MANAGER_READ";
226
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NAMES" TO "RELEASE_MANAGER";
227
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NAMES" TO "CODE_INSPECTION_READ";
4534 dpurdie 228
--------------------------------------------------------
229
--  DDL for Table BOM_NOTES
230
--------------------------------------------------------
231
 
5924 dpurdie 232
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" 
4534 dpurdie 233
   (	"BOM_ID" NUMBER, 
234
	"BOM_SCOPE" NUMBER, 
235
	"SCOPE_ID" NUMBER, 
236
	"ARTICLE_ID" NUMBER
5924 dpurdie 237
   ) SEGMENT CREATION IMMEDIATE 
238
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
239
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
240
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
241
  TABLESPACE "RELEASEM_DATA" ;
242
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NOTES" TO "DM_READONLY";
243
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NOTES" TO "MS_READONLY";
244
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NOTES" TO "DEPLOYMENT_MANAGER_READ";
245
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_NOTES" TO "CODE_INSPECTION_READ";
4534 dpurdie 246
--------------------------------------------------------
247
--  DDL for Table BOM_STATE
248
--------------------------------------------------------
249
 
5924 dpurdie 250
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" 
4534 dpurdie 251
   (	"BOM_ID" NUMBER, 
252
	"STATE_ID" NUMBER, 
253
	"DATE_STAMP" DATE, 
254
	"USER_ID" NUMBER, 
5924 dpurdie 255
	"IS_DISPLAYED" CHAR(1 BYTE)
256
   ) SEGMENT CREATION IMMEDIATE 
257
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
258
  STORAGE(INITIAL 327680 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
259
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
260
  TABLESPACE "RELEASEM_DATA" ;
261
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_STATE" TO "DM_READONLY";
262
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_STATE" TO "MS_READONLY";
263
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_STATE" TO "DEPLOYMENT_MANAGER_READ";
264
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_STATE" TO "CODE_INSPECTION_READ";
4534 dpurdie 265
--------------------------------------------------------
266
--  DDL for Table BOM_STATE20100609
267
--------------------------------------------------------
268
 
5924 dpurdie 269
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_STATE20100609" 
4534 dpurdie 270
   (	"BOM_ID" NUMBER, 
271
	"STATE_ID" NUMBER, 
272
	"DATE_STAMP" DATE, 
273
	"USER_ID" NUMBER, 
5924 dpurdie 274
	"IS_DISPLAYED" CHAR(1 BYTE)
275
   ) SEGMENT CREATION IMMEDIATE 
276
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
277
  STORAGE(INITIAL 262144 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
278
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
279
  TABLESPACE "RELEASEM_DATA" ;
4534 dpurdie 280
--------------------------------------------------------
281
--  DDL for Table BOM_TRAIL
282
--------------------------------------------------------
283
 
5924 dpurdie 284
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" 
4534 dpurdie 285
   (	"BOM_ID" NUMBER, 
5924 dpurdie 286
	"TRAIL_ACTION" VARCHAR2(4000 BYTE), 
287
	"TRAIL_COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 288
	"USER_ID" NUMBER, 
289
	"DATE_TIME_STAMP" DATE
5924 dpurdie 290
   ) SEGMENT CREATION IMMEDIATE 
291
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
292
  STORAGE(INITIAL 7340032 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
293
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
294
  TABLESPACE "RELEASEM_DATA" ;
295
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_TRAIL" TO "DM_READONLY";
296
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_TRAIL" TO "MS_READONLY";
297
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_TRAIL" TO "DEPLOYMENT_MANAGER_READ";
298
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOM_TRAIL" TO "CODE_INSPECTION_READ";
4534 dpurdie 299
--------------------------------------------------------
300
--  DDL for Table BOS_TYPES
301
--------------------------------------------------------
302
 
5924 dpurdie 303
  CREATE TABLE "DEPLOYMENT_MANAGER"."BOS_TYPES" 
4534 dpurdie 304
   (	"BOS_ID" NUMBER, 
5924 dpurdie 305
	"BOS_TYPE" VARCHAR2(50 BYTE), 
306
	"BOS_ICON" VARCHAR2(50 BYTE), 
4534 dpurdie 307
	"BOS_ORDER" NUMBER, 
5924 dpurdie 308
	"ELECTRONIC_NAME" VARCHAR2(50 BYTE)
309
   ) SEGMENT CREATION IMMEDIATE 
310
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
311
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
312
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
313
  TABLESPACE "RELEASEM_DATA" ;
314
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOS_TYPES" TO "DM_READONLY";
315
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOS_TYPES" TO "MS_READONLY";
316
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOS_TYPES" TO "DEPLOYMENT_MANAGER_READ";
317
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOS_TYPES" TO "RELEASE_MANAGER";
318
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BOS_TYPES" TO "CODE_INSPECTION_READ";
4534 dpurdie 319
--------------------------------------------------------
320
--  DDL for Table BRANCHES
321
--------------------------------------------------------
322
 
5924 dpurdie 323
  CREATE TABLE "DEPLOYMENT_MANAGER"."BRANCHES" 
4534 dpurdie 324
   (	"BRANCH_ID" NUMBER, 
325
	"PROJ_ID" NUMBER, 
5924 dpurdie 326
	"BRANCH_NAME" VARCHAR2(255 BYTE), 
4534 dpurdie 327
	"RM_VTREE_FK" NUMBER, 
5924 dpurdie 328
	"IS_HIDDEN" CHAR(1 BYTE), 
329
	"BRANCH_COMMENTS" VARCHAR2(4000 BYTE)
330
   ) SEGMENT CREATION IMMEDIATE 
331
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
332
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
333
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
334
  TABLESPACE "RELEASEM_DATA" ;
335
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BRANCHES" TO "DM_READONLY";
336
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BRANCHES" TO "MS_READONLY";
337
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BRANCHES" TO "DEPLOYMENT_MANAGER_READ";
338
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."BRANCHES" TO "RELEASE_MANAGER";
339
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."BRANCHES" TO "CODE_INSPECTION_READ";
4534 dpurdie 340
--------------------------------------------------------
341
--  DDL for Table DM_PROJECTS
342
--------------------------------------------------------
343
 
5924 dpurdie 344
  CREATE TABLE "DEPLOYMENT_MANAGER"."DM_PROJECTS" 
4534 dpurdie 345
   (	"PROJ_ID" NUMBER, 
5924 dpurdie 346
	"PROJ_NAME" VARCHAR2(255 BYTE), 
4534 dpurdie 347
	"RM_PROJECTS_FK" NUMBER, 
5924 dpurdie 348
	"IS_HIDDEN" CHAR(1 BYTE), 
349
	"IS_DOWNLOAD" CHAR(1 BYTE)
350
   ) SEGMENT CREATION IMMEDIATE 
351
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
352
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
353
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
354
  TABLESPACE "RELEASEM_DATA" ;
355
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" TO "DM_READONLY";
356
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" TO "MS_READONLY";
357
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" TO "DEPLOYMENT_MANAGER_READ";
358
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" TO "ACCESS_MANAGER";
359
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" TO "RELEASE_MANAGER";
360
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 361
--------------------------------------------------------
362
--  DDL for Table HARDWARE
363
--------------------------------------------------------
364
 
5924 dpurdie 365
  CREATE TABLE "DEPLOYMENT_MANAGER"."HARDWARE" 
4534 dpurdie 366
   (	"HARDWARE_NAME_ID" NUMBER, 
367
	"BOM_ID" NUMBER, 
5924 dpurdie 368
	"HARDWARE_NAME" VARCHAR2(255 BYTE), 
369
	"TIER_NAME" VARCHAR2(255 BYTE), 
4534 dpurdie 370
	"OLD_HARDWARE_NAME_ID" NUMBER
5924 dpurdie 371
   ) SEGMENT CREATION IMMEDIATE 
372
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
373
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
374
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
375
  TABLESPACE "RELEASEM_DATA" ;
376
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE" TO "DM_READONLY";
377
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE" TO "MS_READONLY";
378
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE" TO "DEPLOYMENT_MANAGER_READ";
379
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE" TO "CODE_INSPECTION_READ";
4534 dpurdie 380
--------------------------------------------------------
381
--  DDL for Table HARDWARE_NODE
382
--------------------------------------------------------
383
 
5924 dpurdie 384
  CREATE TABLE "DEPLOYMENT_MANAGER"."HARDWARE_NODE" 
4534 dpurdie 385
   (	"HARDWARE_NAME_ID" NUMBER, 
386
	"NODE_ID" NUMBER
5924 dpurdie 387
   ) SEGMENT CREATION IMMEDIATE 
388
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
389
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
390
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
391
  TABLESPACE "RELEASEM_DATA" ;
392
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" TO "DM_READONLY";
393
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" TO "MS_READONLY";
394
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" TO "DEPLOYMENT_MANAGER_READ";
395
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" TO "CODE_INSPECTION_READ";
4534 dpurdie 396
--------------------------------------------------------
397
--  DDL for Table HIDE_PRODUCTS
398
--------------------------------------------------------
399
 
5924 dpurdie 400
  CREATE TABLE "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" 
4534 dpurdie 401
   (	"OS_ID" NUMBER, 
402
	"PROD_ID" NUMBER
5924 dpurdie 403
   ) SEGMENT CREATION IMMEDIATE 
404
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
405
  STORAGE(INITIAL 6291456 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
406
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
407
  TABLESPACE "RELEASEM_DATA" ;
408
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" TO "DM_READONLY";
409
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" TO "MS_READONLY";
410
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" TO "DEPLOYMENT_MANAGER_READ";
411
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" TO "DEPMAN_TEST";
412
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 413
--------------------------------------------------------
414
--  DDL for Table KNOWLEDGE_BASE
415
--------------------------------------------------------
416
 
5924 dpurdie 417
  CREATE TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" 
4534 dpurdie 418
   (	"ARTICLE_ID" NUMBER, 
5924 dpurdie 419
	"ARTICLE_TITLE" VARCHAR2(4000 BYTE), 
420
	"ARTICLE_DETAILS" VARCHAR2(4000 BYTE), 
4534 dpurdie 421
	"VISIBILITY_LEVEL_FK" NUMBER, 
5924 dpurdie 422
	"IS_READONLY" CHAR(1 BYTE), 
4534 dpurdie 423
	"CREATED_STAMP" DATE, 
424
	"CREATOR_ID" NUMBER, 
425
	"MOD_STAMP" DATE, 
426
	"MODIFIER_ID" NUMBER
5924 dpurdie 427
   ) SEGMENT CREATION IMMEDIATE 
428
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
429
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
430
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
431
  TABLESPACE "RELEASEM_DATA" ;
432
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" TO "DM_READONLY";
433
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" TO "MS_READONLY";
434
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" TO "DEPLOYMENT_MANAGER_READ";
435
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" TO "CODE_INSPECTION_READ";
4534 dpurdie 436
--------------------------------------------------------
437
--  DDL for Table MESSAGE_BOARD
438
--------------------------------------------------------
439
 
5924 dpurdie 440
  CREATE TABLE "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" 
4534 dpurdie 441
   (	"MSG_ID" NUMBER, 
5924 dpurdie 442
	"MSG_DETAILS" VARCHAR2(2000 BYTE), 
4534 dpurdie 443
	"SUBMITION_DATE" DATE, 
444
	"EXPIRY_DATE" DATE, 
445
	"DUE_DATE" DATE
5924 dpurdie 446
   ) SEGMENT CREATION IMMEDIATE 
447
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
448
  STORAGE(INITIAL 81920 NEXT 65536 MINEXTENTS 1 MAXEXTENTS 2147483645
449
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
450
  TABLESPACE "RELEASEM_DATA" ;
451
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" TO "DM_READONLY";
452
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" TO "MS_READONLY";
453
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" TO "DEPLOYMENT_MANAGER_READ";
454
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" TO "CODE_INSPECTION_READ";
4534 dpurdie 455
--------------------------------------------------------
456
--  DDL for Table NETWORK_NODES
457
--------------------------------------------------------
458
 
5924 dpurdie 459
  CREATE TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" 
4534 dpurdie 460
   (	"NODE_ID" NUMBER, 
461
	"NODE_TYPE_ID" NUMBER, 
5924 dpurdie 462
	"NODE_NAME" VARCHAR2(255 BYTE), 
463
	"NODE_COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 464
	"OLD_NODE_ID" NUMBER, 
5924 dpurdie 465
	"NODE_VERSION" VARCHAR2(4000 BYTE), 
4534 dpurdie 466
	"NODE_LIFE_CYCLE" NUMBER, 
5924 dpurdie 467
	"NOT_XML" VARCHAR2(2 BYTE)
468
   ) SEGMENT CREATION IMMEDIATE 
469
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
470
  STORAGE(INITIAL 12582912 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
471
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
472
  TABLESPACE "RELEASEM_DATA" ;
473
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" TO "DM_READONLY";
474
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" TO "MS_READONLY";
475
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" TO "DEPLOYMENT_MANAGER_READ";
476
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" TO "RELEASE_MANAGER";
477
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" TO "CODE_INSPECTION_READ";
4534 dpurdie 478
--------------------------------------------------------
479
--  DDL for Table NODE_TRAIL
480
--------------------------------------------------------
481
 
5924 dpurdie 482
  CREATE TABLE "DEPLOYMENT_MANAGER"."NODE_TRAIL" 
4534 dpurdie 483
   (	"NODE_ID" NUMBER, 
5924 dpurdie 484
	"TRAIL_ACTION" VARCHAR2(4000 BYTE), 
4534 dpurdie 485
	"USER_ID" NUMBER, 
486
	"DATE_TIME_STAMP" DATE
5924 dpurdie 487
   ) SEGMENT CREATION IMMEDIATE 
488
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
489
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
490
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
491
  TABLESPACE "RELEASEM_DATA" ;
492
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TRAIL" TO "DM_READONLY";
493
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TRAIL" TO "MS_READONLY";
494
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TRAIL" TO "DEPLOYMENT_MANAGER_READ";
495
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TRAIL" TO "CODE_INSPECTION_READ";
4534 dpurdie 496
--------------------------------------------------------
497
--  DDL for Table NODE_TYPES
498
--------------------------------------------------------
499
 
5924 dpurdie 500
  CREATE TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" 
4534 dpurdie 501
   (	"NODE_TYPE_ID" NUMBER, 
5924 dpurdie 502
	"NODE_TYPE" VARCHAR2(50 BYTE), 
503
	"NODE_ICON" VARCHAR2(50 BYTE), 
504
	"NODE_IMAGE" VARCHAR2(50 BYTE), 
4534 dpurdie 505
	"NODE_ORDER" NUMBER
5924 dpurdie 506
   ) SEGMENT CREATION IMMEDIATE 
507
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
508
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
509
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
510
  TABLESPACE "RELEASEM_DATA" ;
511
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TYPES" TO "DM_READONLY";
512
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TYPES" TO "MS_READONLY";
513
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TYPES" TO "DEPLOYMENT_MANAGER_READ";
514
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NODE_TYPES" TO "CODE_INSPECTION_READ";
4534 dpurdie 515
--------------------------------------------------------
516
--  DDL for Table NOTIFY_USER
517
--------------------------------------------------------
518
 
5924 dpurdie 519
  CREATE TABLE "DEPLOYMENT_MANAGER"."NOTIFY_USER" 
4534 dpurdie 520
   (	"PROJ_ID" NUMBER, 
521
	"USER_ID" NUMBER, 
522
	"EVENT_ENUM" NUMBER
5924 dpurdie 523
   ) SEGMENT CREATION IMMEDIATE 
524
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
525
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
526
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
527
  TABLESPACE "RELEASEM_DATA" ;
528
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NOTIFY_USER" TO "DM_READONLY";
529
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NOTIFY_USER" TO "MS_READONLY";
530
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NOTIFY_USER" TO "DEPLOYMENT_MANAGER_READ";
531
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."NOTIFY_USER" TO "CODE_INSPECTION_READ";
4534 dpurdie 532
--------------------------------------------------------
533
--  DDL for Table OPERATING_SYSTEMS
534
--------------------------------------------------------
535
 
5924 dpurdie 536
  CREATE TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" 
4534 dpurdie 537
   (	"OS_ID" NUMBER, 
5924 dpurdie 538
	"OS_NAME" VARCHAR2(50 BYTE), 
4534 dpurdie 539
	"NODE_ID" NUMBER, 
5924 dpurdie 540
	"OS_COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 541
	"OLD_OS_ID" NUMBER, 
5924 dpurdie 542
	"NODE_SPEC_FILE" VARCHAR2(4000 BYTE), 
543
	"NOT_XML" VARCHAR2(2 BYTE)
544
   ) SEGMENT CREATION IMMEDIATE 
545
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
546
  STORAGE(INITIAL 12582912 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
547
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
548
  TABLESPACE "RELEASEM_DATA" ;
549
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" TO "DM_READONLY";
550
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" TO "MS_READONLY";
551
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" TO "DEPLOYMENT_MANAGER_READ";
552
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" TO "RELEASE_MANAGER";
553
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" TO "CODE_INSPECTION_READ";
4534 dpurdie 554
--------------------------------------------------------
555
--  DDL for Table OS_BASE_ENV
556
--------------------------------------------------------
557
 
5924 dpurdie 558
  CREATE TABLE "DEPLOYMENT_MANAGER"."OS_BASE_ENV" 
4534 dpurdie 559
   (	"OS_ID" NUMBER, 
560
	"BASE_ENV_ID" NUMBER
5924 dpurdie 561
   ) SEGMENT CREATION IMMEDIATE 
562
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
563
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
564
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
565
  TABLESPACE "RELEASEM_DATA" ;
566
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" TO "DM_READONLY";
567
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" TO "MS_READONLY";
568
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" TO "DEPLOYMENT_MANAGER_READ";
569
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" TO "RELEASE_MANAGER";
570
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" TO "CODE_INSPECTION_READ";
4534 dpurdie 571
--------------------------------------------------------
572
--  DDL for Table OS_CONTENTS
573
--------------------------------------------------------
574
 
5924 dpurdie 575
  CREATE TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS" 
4534 dpurdie 576
   (	"OS_ID" NUMBER, 
577
	"SEQ_NUM" NUMBER, 
578
	"PROD_ID" NUMBER, 
5924 dpurdie 579
	"PRODUCT_COMMENTS" VARCHAR2(4000 BYTE), 
580
	"CHANGE_LOG_FLAG" CHAR(1 BYTE), 
581
	"IS_NODE_SPEC" VARCHAR2(2 BYTE), 
582
	"NOT_XML" VARCHAR2(2 BYTE)
583
   ) SEGMENT CREATION IMMEDIATE 
584
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
585
  STORAGE(INITIAL 293601280 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
586
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
587
  TABLESPACE "RELEASEM_DATA" ;
4534 dpurdie 588
 
5924 dpurdie 589
   COMMENT ON COLUMN "DEPLOYMENT_MANAGER"."OS_CONTENTS"."CHANGE_LOG_FLAG" IS 'cvn';
590
   COMMENT ON TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS"  IS 'CHANGE_LOG_FLAG: 
4534 dpurdie 591
N - new 
592
U - updated version';
5924 dpurdie 593
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" TO "DM_READONLY";
594
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" TO "MS_READONLY";
595
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" TO "DEPLOYMENT_MANAGER_READ";
596
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" TO "RELEASE_MANAGER";
597
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 598
--------------------------------------------------------
599
--  DDL for Table OS_TRAIL
600
--------------------------------------------------------
601
 
5924 dpurdie 602
  CREATE TABLE "DEPLOYMENT_MANAGER"."OS_TRAIL" 
4534 dpurdie 603
   (	"OS_ID" NUMBER, 
5924 dpurdie 604
	"TRAIL_ACTION" VARCHAR2(4000 BYTE), 
4534 dpurdie 605
	"USER_ID" NUMBER, 
606
	"DATE_TIME_STAMP" DATE
5924 dpurdie 607
   ) SEGMENT CREATION IMMEDIATE 
608
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
609
  STORAGE(INITIAL 258998272 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
610
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
611
  TABLESPACE "RELEASEM_DATA" ;
612
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_TRAIL" TO "DM_READONLY";
613
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_TRAIL" TO "MS_READONLY";
614
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_TRAIL" TO "DEPLOYMENT_MANAGER_READ";
615
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."OS_TRAIL" TO "CODE_INSPECTION_READ";
4534 dpurdie 616
--------------------------------------------------------
617
--  DDL for Table PACKAGE_TRAIL
618
--------------------------------------------------------
619
 
5924 dpurdie 620
  CREATE TABLE "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" 
4534 dpurdie 621
   (	"PKG_ID" NUMBER, 
5924 dpurdie 622
	"TRAIL_ACTION" VARCHAR2(4000 BYTE), 
4534 dpurdie 623
	"USER_ID" NUMBER, 
624
	"DATE_TIME_STAMP" DATE
5924 dpurdie 625
   ) SEGMENT CREATION IMMEDIATE 
626
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
627
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
628
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
629
  TABLESPACE "RELEASEM_DATA" ;
630
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" TO "DM_READONLY";
631
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" TO "MS_READONLY";
632
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" TO "DEPLOYMENT_MANAGER_READ";
633
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" TO "CODE_INSPECTION_READ";
4534 dpurdie 634
--------------------------------------------------------
635
--  DDL for Table PROCESSES_CONFIG
636
--------------------------------------------------------
637
 
5924 dpurdie 638
  CREATE TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" 
4534 dpurdie 639
   (	"PROC_ID" NUMBER, 
640
	"PROD_ID" NUMBER, 
641
	"OS_ID" NUMBER, 
5924 dpurdie 642
	"PKG_HEALTH_TAG" VARCHAR2(255 BYTE), 
643
	"CMD_INTERFACE" VARCHAR2(4000 BYTE), 
644
	"PKG_OWNER" VARCHAR2(4000 BYTE), 
645
	"IS_INTERFACE" CHAR(1 BYTE), 
646
	"PROC_DESCRIPTION" VARCHAR2(4000 BYTE), 
4534 dpurdie 647
	"PKG_ID" NUMBER
5924 dpurdie 648
   ) SEGMENT CREATION IMMEDIATE 
649
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
650
  STORAGE(INITIAL 4194304 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
651
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
652
  TABLESPACE "RELEASEM_DATA" ;
653
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" TO "DM_READONLY";
654
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" TO "MS_READONLY";
655
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" TO "DEPLOYMENT_MANAGER_READ";
656
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" TO "RELEASE_MANAGER";
657
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" TO "CODE_INSPECTION_READ";
4534 dpurdie 658
--------------------------------------------------------
659
--  DDL for Table PRODUCTION_BOM
660
--------------------------------------------------------
661
 
5924 dpurdie 662
  CREATE TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" 
4534 dpurdie 663
   (	"PROJ_ID" NUMBER, 
664
	"BOM_ID" NUMBER, 
665
	"STATE_ID" NUMBER
5924 dpurdie 666
   ) SEGMENT CREATION IMMEDIATE 
667
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
668
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
669
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
670
  TABLESPACE "RELEASEM_DATA" ;
671
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" TO "DM_READONLY";
672
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" TO "MS_READONLY";
673
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" TO "DEPLOYMENT_MANAGER_READ";
674
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" TO "CODE_INSPECTION_READ";
4534 dpurdie 675
--------------------------------------------------------
676
--  DDL for Table PRODUCTS_QUEUE
677
--------------------------------------------------------
678
 
5924 dpurdie 679
  CREATE TABLE "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" 
4534 dpurdie 680
   (	"PRODQ_ID" NUMBER, 
681
	"PROJ_ID" NUMBER, 
682
	"PROD_ID" NUMBER, 
683
	"ARRIVAL_STAMP" DATE
5924 dpurdie 684
   ) SEGMENT CREATION IMMEDIATE 
685
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
686
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
687
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
688
  TABLESPACE "RELEASEM_DATA" ;
689
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" TO "DM_READONLY";
690
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" TO "MS_READONLY";
691
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" TO "DEPLOYMENT_MANAGER_READ";
692
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" TO "CODE_INSPECTION_READ";
4534 dpurdie 693
--------------------------------------------------------
694
--  DDL for Table PRODUCT_DETAILS
695
--------------------------------------------------------
696
 
5924 dpurdie 697
  CREATE TABLE "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" 
4534 dpurdie 698
   (	"PROD_ID" NUMBER, 
5924 dpurdie 699
	"IS_REJECTED" CHAR(1 BYTE)
700
   ) SEGMENT CREATION IMMEDIATE 
701
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
702
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
703
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
704
  TABLESPACE "RELEASEM_DATA" ;
705
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" TO "DM_READONLY";
706
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" TO "MS_READONLY";
707
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" TO "DEPLOYMENT_MANAGER_READ";
708
  GRANT DELETE, INSERT, SELECT, UPDATE ON "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" TO "RELEASE_MANAGER";
709
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" TO "CODE_INSPECTION_READ";
4534 dpurdie 710
--------------------------------------------------------
711
--  DDL for Table PRODUCT_NOTES
712
--------------------------------------------------------
713
 
5924 dpurdie 714
  CREATE TABLE "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" 
4534 dpurdie 715
   (	"PROD_ID" NUMBER, 
5924 dpurdie 716
	"NOTES" VARCHAR2(4000 BYTE)
717
   ) SEGMENT CREATION IMMEDIATE 
718
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
719
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
720
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
721
  TABLESPACE "RELEASEM_DATA" ;
722
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" TO "DM_READONLY";
723
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" TO "MS_READONLY";
4534 dpurdie 724
--------------------------------------------------------
725
--  DDL for Table PRODUCT_TRAIL
726
--------------------------------------------------------
727
 
5924 dpurdie 728
  CREATE TABLE "DEPLOYMENT_MANAGER"."PRODUCT_TRAIL" 
4534 dpurdie 729
   (	"PROD_ID" NUMBER, 
5924 dpurdie 730
	"TRAIL_ACTION" VARCHAR2(4000 BYTE), 
4534 dpurdie 731
	"USER_ID" NUMBER, 
732
	"DATE_TIME_STAMP" DATE
5924 dpurdie 733
   ) SEGMENT CREATION IMMEDIATE 
734
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
735
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
736
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
737
  TABLESPACE "RELEASEM_DATA" ;
738
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_TRAIL" TO "DM_READONLY";
739
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."PRODUCT_TRAIL" TO "MS_READONLY";
4534 dpurdie 740
--------------------------------------------------------
741
--  DDL for Table REJECTION_TRAIL
742
--------------------------------------------------------
743
 
5924 dpurdie 744
  CREATE TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" 
4534 dpurdie 745
   (	"ENUM_ENTITY_TYPE" NUMBER, 
746
	"ENTITY_ID" NUMBER, 
747
	"REJECT_SEQ" NUMBER, 
5924 dpurdie 748
	"IS_REJECTED" CHAR(1 BYTE), 
749
	"COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 750
	"DATE_TIME_STAMP" DATE, 
751
	"USER_ID" NUMBER
5924 dpurdie 752
   ) SEGMENT CREATION IMMEDIATE 
753
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
754
  STORAGE(INITIAL 196608 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
755
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
756
  TABLESPACE "RELEASEM_DATA" ;
757
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" TO "DM_READONLY";
758
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" TO "MS_READONLY";
759
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" TO "DEPLOYMENT_MANAGER_READ";
760
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" TO "CODE_INSPECTION_READ";
4534 dpurdie 761
--------------------------------------------------------
762
--  DDL for Table RELATED_ARTICLES
763
--------------------------------------------------------
764
 
5924 dpurdie 765
  CREATE TABLE "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" 
4534 dpurdie 766
   (	"ARTICLE_ID" NUMBER, 
767
	"RARTICLE_ID" NUMBER
5924 dpurdie 768
   ) SEGMENT CREATION IMMEDIATE 
769
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
770
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
771
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
772
  TABLESPACE "RELEASEM_DATA" ;
773
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" TO "DM_READONLY";
774
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" TO "MS_READONLY";
775
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" TO "DEPLOYMENT_MANAGER_READ";
776
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" TO "CODE_INSPECTION_READ";
4534 dpurdie 777
--------------------------------------------------------
778
--  DDL for Table RELEASE_AUTHORISATION
779
--------------------------------------------------------
780
 
5924 dpurdie 781
  CREATE TABLE "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" 
4534 dpurdie 782
   (	"PV_ID" NUMBER, 
783
	"BOM_ID" NUMBER, 
784
	"TESTER_ID" NUMBER, 
5924 dpurdie 785
	"TESTER_COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 786
	"TESTER_DATESTAMP" DATE, 
787
	"MANAGER_ID" NUMBER, 
5924 dpurdie 788
	"MANAGER_COMMENTS" VARCHAR2(4000 BYTE), 
4534 dpurdie 789
	"MANAGER_DATESTAMP" DATE, 
790
	"IS_OFFICIAL" CHAR(1 CHAR)
5924 dpurdie 791
   ) SEGMENT CREATION IMMEDIATE 
792
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
793
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
794
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
795
  TABLESPACE "RELEASEM_DATA" ;
796
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" TO "DM_READONLY";
797
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" TO "MS_READONLY";
798
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" TO "DEPLOYMENT_MANAGER_READ";
799
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" TO "CODE_INSPECTION_READ";
4534 dpurdie 800
--------------------------------------------------------
801
--  DDL for Table STATES
802
--------------------------------------------------------
803
 
5924 dpurdie 804
  CREATE TABLE "DEPLOYMENT_MANAGER"."STATES" 
4534 dpurdie 805
   (	"STATE_ID" NUMBER, 
806
	"PROJ_ID" NUMBER, 
5924 dpurdie 807
	"STATE_NAME" VARCHAR2(255 BYTE), 
4534 dpurdie 808
	"STATE_SEQ" NUMBER, 
809
	"STATE_TYPE_ENUM" NUMBER, 
5924 dpurdie 810
	"IS_DOWNLOAD" CHAR(1 BYTE)
811
   ) SEGMENT CREATION IMMEDIATE 
812
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
813
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
814
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
815
  TABLESPACE "RELEASEM_DATA" ;
4534 dpurdie 816
 
5924 dpurdie 817
   COMMENT ON TABLE "DEPLOYMENT_MANAGER"."STATES"  IS '1 Integration
4534 dpurdie 818
2 Released To Testing
819
3 Released To Region
820
4 Released To Customer';
5924 dpurdie 821
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."STATES" TO "DM_READONLY";
822
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."STATES" TO "MS_READONLY";
823
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."STATES" TO "DEPLOYMENT_MANAGER_READ";
824
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."STATES" TO "CODE_INSPECTION_READ";
4534 dpurdie 825
--------------------------------------------------------
826
--  DDL for Table SYSTEM_CONFIGURATION
827
--------------------------------------------------------
828
 
5924 dpurdie 829
  CREATE TABLE "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" 
830
   (	"ITEM_NAME" VARCHAR2(255 BYTE), 
831
	"ITEM_VALUE" VARCHAR2(4000 BYTE), 
832
	"ITEM_DESCRIPTION" VARCHAR2(4000 BYTE)
833
   ) SEGMENT CREATION IMMEDIATE 
834
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
835
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
836
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
837
  TABLESPACE "RELEASEM_DATA" ;
838
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" TO "DM_READONLY";
839
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" TO "MS_READONLY";
840
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" TO "DEPLOYMENT_MANAGER_READ";
841
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" TO "CODE_INSPECTION_READ";
4534 dpurdie 842
--------------------------------------------------------
843
--  DDL for Table TABLEOFCONTENTS
844
--------------------------------------------------------
845
 
5924 dpurdie 846
  CREATE TABLE "DEPLOYMENT_MANAGER"."TABLEOFCONTENTS" 
847
   (	"GROUPER" VARCHAR2(1000 BYTE), 
4534 dpurdie 848
	"PAGE" NUMBER(*,0), 
849
	"DATETIME" DATE
5924 dpurdie 850
   ) SEGMENT CREATION IMMEDIATE 
851
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
852
  STORAGE(INITIAL 786432 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
853
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
854
  TABLESPACE "RELEASEM_DATA" ;
855
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TABLEOFCONTENTS" TO "DM_READONLY";
856
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TABLEOFCONTENTS" TO "MS_READONLY";
857
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TABLEOFCONTENTS" TO "DEPLOYMENT_MANAGER_READ";
858
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TABLEOFCONTENTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 859
--------------------------------------------------------
860
--  DDL for Table TEST_TYPES
861
--------------------------------------------------------
862
 
5924 dpurdie 863
  CREATE TABLE "DEPLOYMENT_MANAGER"."TEST_TYPES" 
4534 dpurdie 864
   (	"TEST_TYPE_ID" NUMBER, 
5924 dpurdie 865
	"TEST_TYPE_NAME" VARCHAR2(50 BYTE), 
4534 dpurdie 866
	"DISPLAY_ORDER" NUMBER
5924 dpurdie 867
   ) SEGMENT CREATION IMMEDIATE 
868
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
869
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
870
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
871
  TABLESPACE "RELEASEM_DATA" ;
872
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TEST_TYPES" TO "DM_READONLY";
873
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TEST_TYPES" TO "MS_READONLY";
874
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TEST_TYPES" TO "DEPLOYMENT_MANAGER_READ";
875
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."TEST_TYPES" TO "CODE_INSPECTION_READ";
4534 dpurdie 876
--------------------------------------------------------
877
--  DDL for Table UNIT_TESTS
878
--------------------------------------------------------
879
 
5924 dpurdie 880
  CREATE TABLE "DEPLOYMENT_MANAGER"."UNIT_TESTS" 
4534 dpurdie 881
   (	"TEST_ID" NUMBER, 
882
	"PV_ID" NUMBER, 
883
	"TEST_TYPES_FK" NUMBER, 
5924 dpurdie 884
	"TEST_SUMMARY" VARCHAR2(4000 BYTE), 
4534 dpurdie 885
	"COMPLETION_DATE" DATE, 
886
	"COMPLETED_BY" NUMBER, 
5924 dpurdie 887
	"RESULTS_URL" VARCHAR2(2000 BYTE), 
888
	"RESULTS_ATTACHMENT_NAME" VARCHAR2(2000 BYTE)
889
   ) SEGMENT CREATION IMMEDIATE 
890
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
891
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
892
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
893
  TABLESPACE "RELEASEM_DATA" ;
894
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."UNIT_TESTS" TO "DM_READONLY";
895
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."UNIT_TESTS" TO "MS_READONLY";
896
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."UNIT_TESTS" TO "DEPLOYMENT_MANAGER_READ";
897
  GRANT SELECT ON "DEPLOYMENT_MANAGER"."UNIT_TESTS" TO "CODE_INSPECTION_READ";
4534 dpurdie 898
--------------------------------------------------------
899
--  DDL for Index INX_BASE_ENV_BOM_ID
900
--------------------------------------------------------
901
 
5924 dpurdie 902
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BASE_ENV_BOM_ID" ON "DEPLOYMENT_MANAGER"."BASE_ENV" ("BOM_ID") 
903
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
904
  STORAGE(INITIAL 393216 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
905
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
906
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 907
--------------------------------------------------------
908
--  DDL for Index PK_BOS_TYPES
909
--------------------------------------------------------
910
 
5924 dpurdie 911
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_BOS_TYPES" ON "DEPLOYMENT_MANAGER"."BOS_TYPES" ("BOS_ID") 
912
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
913
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
914
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
915
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 916
--------------------------------------------------------
917
--  DDL for Index PRODUCT_NOTES_PK
918
--------------------------------------------------------
919
 
5924 dpurdie 920
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PRODUCT_NOTES_PK" ON "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" ("PROD_ID") 
921
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
922
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
923
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
924
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 925
--------------------------------------------------------
926
--  DDL for Index INX_OLD_BASE_ENV_ID
927
--------------------------------------------------------
928
 
5924 dpurdie 929
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OLD_BASE_ENV_ID" ON "DEPLOYMENT_MANAGER"."BASE_ENV" ("OLD_BASE_ENV_ID") 
930
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
931
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
932
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
933
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 934
--------------------------------------------------------
935
--  DDL for Index PK_DM_PROJECTS
936
--------------------------------------------------------
937
 
5924 dpurdie 938
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_DM_PROJECTS" ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_ID") 
939
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
940
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
941
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
942
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 943
--------------------------------------------------------
944
--  DDL for Index INX_OLD_OS_ID
945
--------------------------------------------------------
946
 
5924 dpurdie 947
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OLD_OS_ID" ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OLD_OS_ID") 
948
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
949
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
950
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
951
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 952
--------------------------------------------------------
953
--  DDL for Index PK_NODE_TYPES
954
--------------------------------------------------------
955
 
5924 dpurdie 956
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_NODE_TYPES" ON "DEPLOYMENT_MANAGER"."NODE_TYPES" ("NODE_TYPE_ID") 
957
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
958
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
959
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
960
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 961
--------------------------------------------------------
962
--  DDL for Index UNQ_HARDWARE_NODE
963
--------------------------------------------------------
964
 
5924 dpurdie 965
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_HARDWARE_NODE" ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" ("HARDWARE_NAME_ID", "NODE_ID") 
966
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
967
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
968
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
969
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 970
--------------------------------------------------------
971
--  DDL for Index PK_BASE_ENV
972
--------------------------------------------------------
973
 
5924 dpurdie 974
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_BASE_ENV" ON "DEPLOYMENT_MANAGER"."BASE_ENV" ("BASE_ENV_ID") 
975
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
976
  STORAGE(INITIAL 327680 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
977
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
978
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 979
--------------------------------------------------------
980
--  DDL for Index UNQ_HARDWARE
981
--------------------------------------------------------
982
 
5924 dpurdie 983
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_HARDWARE" ON "DEPLOYMENT_MANAGER"."HARDWARE" ("BOM_ID", "HARDWARE_NAME") 
984
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
985
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
986
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
987
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 988
--------------------------------------------------------
989
--  DDL for Index INX_KB_ARTICLE_DETAILS
990
--------------------------------------------------------
991
 
5924 dpurdie 992
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_KB_ARTICLE_DETAILS" ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("ARTICLE_DETAILS") 
993
  PCTFREE 10 INITRANS 2 MAXTRANS 167 COMPUTE STATISTICS 
994
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
995
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
996
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 997
--------------------------------------------------------
998
--  DDL for Index UNQ_OS_BASE_ENV
999
--------------------------------------------------------
1000
 
5924 dpurdie 1001
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_OS_BASE_ENV" ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" ("OS_ID", "BASE_ENV_ID") 
1002
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1003
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1004
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1005
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1006
--------------------------------------------------------
1007
--  DDL for Index UNQ_BOS_TYPES
1008
--------------------------------------------------------
1009
 
5924 dpurdie 1010
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BOS_TYPES" ON "DEPLOYMENT_MANAGER"."BOS_TYPES" ("BOS_TYPE") 
1011
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1012
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1013
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1014
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1015
--------------------------------------------------------
1016
--  DDL for Index INX_OS_NODE_ID
1017
--------------------------------------------------------
1018
 
5924 dpurdie 1019
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OS_NODE_ID" ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("NODE_ID") 
1020
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1021
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1022
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1023
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1024
--------------------------------------------------------
1025
--  DDL for Index INX_OLD_HARDWARE_NAME_ID
1026
--------------------------------------------------------
1027
 
5924 dpurdie 1028
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OLD_HARDWARE_NAME_ID" ON "DEPLOYMENT_MANAGER"."HARDWARE" ("OLD_HARDWARE_NAME_ID") 
1029
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1030
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1031
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1032
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1033
--------------------------------------------------------
1034
--  DDL for Index INX_BOM_NOTES
1035
--------------------------------------------------------
1036
 
5924 dpurdie 1037
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BOM_NOTES" ON "DEPLOYMENT_MANAGER"."BOM_NOTES" ("BOM_ID", "BOM_SCOPE", "SCOPE_ID") 
1038
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1039
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1040
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1041
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1042
--------------------------------------------------------
1043
--  DDL for Index INX_PC_PROC_ID
1044
--------------------------------------------------------
1045
 
5924 dpurdie 1046
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_PC_PROC_ID" ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" ("PROC_ID") 
1047
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1048
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1049
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1050
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1051
--------------------------------------------------------
1052
--  DDL for Index UNQ_NODE_TYPES
1053
--------------------------------------------------------
1054
 
5924 dpurdie 1055
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_NODE_TYPES" ON "DEPLOYMENT_MANAGER"."NODE_TYPES" ("NODE_TYPE") 
1056
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1057
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1058
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1059
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1060
--------------------------------------------------------
1061
--  DDL for Index UNQ_OS_CONTENTS
1062
--------------------------------------------------------
1063
 
5924 dpurdie 1064
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_OS_CONTENTS" ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" ("OS_ID", "PROD_ID") 
1065
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1066
  STORAGE(INITIAL 67108864 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1067
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1068
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1069
--------------------------------------------------------
1070
--  DDL for Index INX_BT_BOM_ID
1071
--------------------------------------------------------
1072
 
5924 dpurdie 1073
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BT_BOM_ID" ON "DEPLOYMENT_MANAGER"."BOM_TRAIL" ("BOM_ID") 
1074
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1075
  STORAGE(INITIAL 983040 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1076
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1077
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1078
--------------------------------------------------------
1079
--  DDL for Index INX_BO_BOM_NAME_ID
1080
--------------------------------------------------------
1081
 
5924 dpurdie 1082
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BO_BOM_NAME_ID" ON "DEPLOYMENT_MANAGER"."BOMS" ("BOM_NAME_ID") 
1083
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1084
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1085
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1086
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1087
--------------------------------------------------------
1088
--  DDL for Index INX_BO_BRANCH_ID
1089
--------------------------------------------------------
1090
 
5924 dpurdie 1091
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BO_BRANCH_ID" ON "DEPLOYMENT_MANAGER"."BOMS" ("BRANCH_ID") 
1092
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1093
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1094
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1095
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1096
--------------------------------------------------------
1097
--  DDL for Index INX_PC_OS_ID
1098
--------------------------------------------------------
1099
 
5924 dpurdie 1100
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_PC_OS_ID" ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" ("OS_ID") 
1101
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1102
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1103
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1104
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1105
--------------------------------------------------------
1106
--  DDL for Index PK_NETWORK_NODES
1107
--------------------------------------------------------
1108
 
5924 dpurdie 1109
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_NETWORK_NODES" ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" ("NODE_ID") 
1110
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1111
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1112
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1113
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1114
--------------------------------------------------------
1115
--  DDL for Index INX_BOM_NOTES_BOM_ID
1116
--------------------------------------------------------
1117
 
5924 dpurdie 1118
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BOM_NOTES_BOM_ID" ON "DEPLOYMENT_MANAGER"."BOM_NOTES" ("BOM_ID") 
1119
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1120
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1121
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1122
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1123
--------------------------------------------------------
1124
--  DDL for Index INX_MSGBOARD
1125
--------------------------------------------------------
1126
 
5924 dpurdie 1127
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_MSGBOARD" ON "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" ("EXPIRY_DATE", "DUE_DATE") 
1128
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1129
  STORAGE(INITIAL 81920 NEXT 65536 MINEXTENTS 1 MAXEXTENTS 2147483645
1130
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1131
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1132
--------------------------------------------------------
1133
--  DDL for Index INX_OBE_OS_ID
1134
--------------------------------------------------------
1135
 
5924 dpurdie 1136
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OBE_OS_ID" ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" ("OS_ID") 
1137
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1138
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1139
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1140
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1141
--------------------------------------------------------
1142
--  DDL for Index INX_HN_NODE_ID
1143
--------------------------------------------------------
1144
 
5924 dpurdie 1145
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_HN_NODE_ID" ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" ("NODE_ID") 
1146
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1147
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1148
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1149
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1150
--------------------------------------------------------
1151
--  DDL for Index INX_HN_HW_ID
1152
--------------------------------------------------------
1153
 
5924 dpurdie 1154
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_HN_HW_ID" ON "DEPLOYMENT_MANAGER"."HARDWARE_NODE" ("HARDWARE_NAME_ID") 
1155
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1156
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1157
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1158
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1159
--------------------------------------------------------
1160
--  DDL for Index INX_OLD_NODE_ID
1161
--------------------------------------------------------
1162
 
5924 dpurdie 1163
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OLD_NODE_ID" ON "DEPLOYMENT_MANAGER"."NETWORK_NODES" ("OLD_NODE_ID") 
1164
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1165
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1166
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1167
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1168
--------------------------------------------------------
1169
--  DDL for Index UNQ_PROC_CONFIG
1170
--------------------------------------------------------
1171
 
5924 dpurdie 1172
  CREATE INDEX "DEPLOYMENT_MANAGER"."UNQ_PROC_CONFIG" ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" ("PROD_ID", "OS_ID", "PKG_HEALTH_TAG") 
1173
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1174
  STORAGE(INITIAL 3145728 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1175
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1176
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1177
--------------------------------------------------------
1178
--  DDL for Index INX_HARDWARE_BOM_ID
1179
--------------------------------------------------------
1180
 
5924 dpurdie 1181
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_HARDWARE_BOM_ID" ON "DEPLOYMENT_MANAGER"."HARDWARE" ("BOM_ID") 
1182
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1183
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1184
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1185
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1186
--------------------------------------------------------
1187
--  DDL for Index INX_BO_BOM_VERSION
1188
--------------------------------------------------------
1189
 
5924 dpurdie 1190
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BO_BOM_VERSION" ON "DEPLOYMENT_MANAGER"."BOMS" ("BOM_VERSION") 
1191
  PCTFREE 10 INITRANS 2 MAXTRANS 167 COMPUTE STATISTICS 
1192
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1193
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1194
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1195
--------------------------------------------------------
1196
--  DDL for Index UNQ_DM_PROJECTS
1197
--------------------------------------------------------
1198
 
5924 dpurdie 1199
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_DM_PROJECTS" ON "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_NAME") 
1200
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1201
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1202
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1203
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1204
--------------------------------------------------------
1205
--  DDL for Index PK_BOMS
1206
--------------------------------------------------------
1207
 
5924 dpurdie 1208
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_BOMS" ON "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") 
1209
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1210
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1211
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1212
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1213
--------------------------------------------------------
1214
--  DDL for Index UNQ_BASE_ENV
1215
--------------------------------------------------------
1216
 
5924 dpurdie 1217
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BASE_ENV" ON "DEPLOYMENT_MANAGER"."BASE_ENV" ("BASE_ENV_NAME", "BOM_ID") 
1218
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1219
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1220
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1221
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1222
--------------------------------------------------------
1223
--  DDL for Index INX_ST_PROJ_ID
1224
--------------------------------------------------------
1225
 
5924 dpurdie 1226
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_ST_PROJ_ID" ON "DEPLOYMENT_MANAGER"."STATES" ("PROJ_ID") 
1227
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1228
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1229
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1230
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1231
--------------------------------------------------------
1232
--  DDL for Index PK_BRANCHES
1233
--------------------------------------------------------
1234
 
5924 dpurdie 1235
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_BRANCHES" ON "DEPLOYMENT_MANAGER"."BRANCHES" ("BRANCH_ID") 
1236
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1237
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1238
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1239
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1240
--------------------------------------------------------
1241
--  DDL for Index UNQ_BOM_NAMES
1242
--------------------------------------------------------
1243
 
5924 dpurdie 1244
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BOM_NAMES" ON "DEPLOYMENT_MANAGER"."BOM_NAMES" ("BOM_NAME") 
1245
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1246
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1247
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1248
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1249
--------------------------------------------------------
1250
--  DDL for Index UNQ_STATES
1251
--------------------------------------------------------
1252
 
5924 dpurdie 1253
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_STATES" ON "DEPLOYMENT_MANAGER"."STATES" ("PROJ_ID", "STATE_NAME") 
1254
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1255
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1256
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1257
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1258
--------------------------------------------------------
1259
--  DDL for Index PK_STATES
1260
--------------------------------------------------------
1261
 
5924 dpurdie 1262
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_STATES" ON "DEPLOYMENT_MANAGER"."STATES" ("STATE_ID") 
1263
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1264
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1265
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1266
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1267
--------------------------------------------------------
1268
--  DDL for Index INX_BR_PROJ_ID
1269
--------------------------------------------------------
1270
 
5924 dpurdie 1271
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BR_PROJ_ID" ON "DEPLOYMENT_MANAGER"."BRANCHES" ("PROJ_ID") 
1272
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1273
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1274
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1275
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1276
--------------------------------------------------------
1277
--  DDL for Index INX_OSC_PROD_ID
1278
--------------------------------------------------------
1279
 
5924 dpurdie 1280
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OSC_PROD_ID" ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" ("PROD_ID") 
1281
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1282
  STORAGE(INITIAL 45088768 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1283
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1284
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1285
--------------------------------------------------------
1286
--  DDL for Index PKSYSTEM_CONFIGURATION1
1287
--------------------------------------------------------
1288
 
5924 dpurdie 1289
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PKSYSTEM_CONFIGURATION1" ON "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" ("ITEM_NAME") 
1290
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1291
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1292
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1293
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1294
--------------------------------------------------------
1295
--  DDL for Index UNQ_BASE_ENV_CONTS
1296
--------------------------------------------------------
1297
 
5924 dpurdie 1298
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BASE_ENV_CONTS" ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" ("BASE_ENV_ID", "PROD_ID") 
1299
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1300
  STORAGE(INITIAL 4194304 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1301
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1302
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1303
--------------------------------------------------------
1304
--  DDL for Index UNQ_BOM_STATE
1305
--------------------------------------------------------
1306
 
5924 dpurdie 1307
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BOM_STATE" ON "DEPLOYMENT_MANAGER"."BOM_STATE" ("BOM_ID", "STATE_ID") 
1308
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1309
  STORAGE(INITIAL 393216 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1310
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1311
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1312
--------------------------------------------------------
1313
--  DDL for Index PK_KNOWLEDGE_BASE
1314
--------------------------------------------------------
1315
 
5924 dpurdie 1316
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_KNOWLEDGE_BASE" ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("ARTICLE_ID") 
1317
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1318
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1319
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1320
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1321
--------------------------------------------------------
1322
--  DDL for Index UNQ_RELATED_ARTICLES
1323
--------------------------------------------------------
1324
 
5924 dpurdie 1325
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_RELATED_ARTICLES" ON "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" ("ARTICLE_ID", "RARTICLE_ID") 
1326
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1327
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1328
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1329
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1330
--------------------------------------------------------
5924 dpurdie 1331
--  DDL for Index BOM_ATTACHMENTS_PK
1332
--------------------------------------------------------
1333
 
1334
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."BOM_ATTACHMENTS_PK" ON "DEPLOYMENT_MANAGER"."BOM_ATTACHMENTS" ("BOM_ID") 
1335
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1336
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1337
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1338
  TABLESPACE "RELEASEM_DATA" ;
1339
--------------------------------------------------------
4534 dpurdie 1340
--  DDL for Index INX_BS_BOM_ID
1341
--------------------------------------------------------
1342
 
5924 dpurdie 1343
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BS_BOM_ID" ON "DEPLOYMENT_MANAGER"."BOM_STATE" ("BOM_ID") 
1344
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1345
  STORAGE(INITIAL 327680 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1346
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1347
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1348
--------------------------------------------------------
1349
--  DDL for Index INX_PC_PROD_ID
1350
--------------------------------------------------------
1351
 
5924 dpurdie 1352
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_PC_PROD_ID" ON "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" ("PROD_ID") 
1353
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1354
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1355
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1356
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1357
--------------------------------------------------------
1358
--  DDL for Index INX_BEC_BASE_ENV_ID
1359
--------------------------------------------------------
1360
 
5924 dpurdie 1361
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BEC_BASE_ENV_ID" ON "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" ("BASE_ENV_ID") 
1362
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1363
  STORAGE(INITIAL 3145728 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1364
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1365
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1366
--------------------------------------------------------
1367
--  DDL for Index INX_OBE_BASE_ENV_ID
1368
--------------------------------------------------------
1369
 
5924 dpurdie 1370
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OBE_BASE_ENV_ID" ON "DEPLOYMENT_MANAGER"."OS_BASE_ENV" ("BASE_ENV_ID") 
1371
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1372
  STORAGE(INITIAL 3145728 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1373
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1374
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1375
--------------------------------------------------------
1376
--  DDL for Index UNQ_BOM_CONTENTS
1377
--------------------------------------------------------
1378
 
5924 dpurdie 1379
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BOM_CONTENTS" ON "DEPLOYMENT_MANAGER"."BOM_CONTENTS" ("BOM_ID", "NODE_ID") 
1380
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1381
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1382
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1383
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1384
--------------------------------------------------------
1385
--  DDL for Index INX_BO_OLD_BOM_ID
1386
--------------------------------------------------------
1387
 
5924 dpurdie 1388
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BO_OLD_BOM_ID" ON "DEPLOYMENT_MANAGER"."BOMS" ("OLD_BOM_ID") 
1389
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1390
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1391
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1392
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1393
--------------------------------------------------------
1394
--  DDL for Index UNQ_OPERATING_SYSTEMS
1395
--------------------------------------------------------
1396
 
5924 dpurdie 1397
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_OPERATING_SYSTEMS" ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OS_NAME", "NODE_ID") 
1398
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1399
  STORAGE(INITIAL 5242880 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1400
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1401
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1402
--------------------------------------------------------
1403
--  DDL for Index PK_MESSAGE_BOARD
1404
--------------------------------------------------------
1405
 
5924 dpurdie 1406
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_MESSAGE_BOARD" ON "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" ("MSG_ID") 
1407
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1408
  STORAGE(INITIAL 81920 NEXT 65536 MINEXTENTS 1 MAXEXTENTS 2147483645
1409
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1410
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1411
--------------------------------------------------------
1412
--  DDL for Index INX_KB_MOD_STAMP
1413
--------------------------------------------------------
1414
 
5924 dpurdie 1415
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_KB_MOD_STAMP" ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("MOD_STAMP") 
1416
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1417
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1418
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1419
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1420
--------------------------------------------------------
1421
--  DDL for Index INX_BO_PARENT_BOM_ID
1422
--------------------------------------------------------
1423
 
5924 dpurdie 1424
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BO_PARENT_BOM_ID" ON "DEPLOYMENT_MANAGER"."BOMS" ("PARENT_BOM_ID") 
1425
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1426
  STORAGE(INITIAL 196608 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1427
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1428
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1429
--------------------------------------------------------
1430
--  DDL for Index INX_KB_ARTICLE_TITLE
1431
--------------------------------------------------------
1432
 
5924 dpurdie 1433
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_KB_ARTICLE_TITLE" ON "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("ARTICLE_TITLE") 
1434
  PCTFREE 10 INITRANS 2 MAXTRANS 167 COMPUTE STATISTICS 
1435
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1436
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1437
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1438
--------------------------------------------------------
1439
--  DDL for Index UNQ_REJECTION_TRAIL
1440
--------------------------------------------------------
1441
 
5924 dpurdie 1442
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_REJECTION_TRAIL" ON "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" ("ENUM_ENTITY_TYPE", "ENTITY_ID", "REJECT_SEQ") 
1443
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1444
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1445
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1446
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1447
--------------------------------------------------------
1448
--  DDL for Index PK_OPERATING_SYSTEMS
1449
--------------------------------------------------------
1450
 
5924 dpurdie 1451
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_OPERATING_SYSTEMS" ON "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OS_ID") 
1452
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1453
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1454
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1455
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1456
--------------------------------------------------------
1457
--  DDL for Index PK_BOM_NAMES
1458
--------------------------------------------------------
1459
 
5924 dpurdie 1460
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_BOM_NAMES" ON "DEPLOYMENT_MANAGER"."BOM_NAMES" ("BOM_NAME_ID") 
1461
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1462
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1463
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1464
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1465
--------------------------------------------------------
1466
--  DDL for Index PKPRODUCT_DETAILS
1467
--------------------------------------------------------
1468
 
5924 dpurdie 1469
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PKPRODUCT_DETAILS" ON "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" ("PROD_ID") 
1470
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1471
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1472
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1473
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1474
--------------------------------------------------------
1475
--  DDL for Index INX_ACTION_TRAIL
1476
--------------------------------------------------------
1477
 
5924 dpurdie 1478
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_ACTION_TRAIL" ON "DEPLOYMENT_MANAGER"."ACTION_TRAIL" ("ACTION_STAMP", "USER_ID", "ACTION_EVENT") 
1479
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1480
  STORAGE(INITIAL 458752 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1481
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1482
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1483
--------------------------------------------------------
1484
--  DDL for Index PK_HARDWARE
1485
--------------------------------------------------------
1486
 
5924 dpurdie 1487
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."PK_HARDWARE" ON "DEPLOYMENT_MANAGER"."HARDWARE" ("HARDWARE_NAME_ID") 
1488
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1489
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1490
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1491
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1492
--------------------------------------------------------
1493
--  DDL for Index INX_OSC_OS_ID
1494
--------------------------------------------------------
1495
 
5924 dpurdie 1496
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_OSC_OS_ID" ON "DEPLOYMENT_MANAGER"."OS_CONTENTS" ("OS_ID") 
1497
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1498
  STORAGE(INITIAL 40894464 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1499
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1500
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1501
--------------------------------------------------------
1502
--  DDL for Index INX_BO_BOM_LIFECYCLE
1503
--------------------------------------------------------
1504
 
5924 dpurdie 1505
  CREATE INDEX "DEPLOYMENT_MANAGER"."INX_BO_BOM_LIFECYCLE" ON "DEPLOYMENT_MANAGER"."BOMS" ("BOM_LIFECYCLE") 
1506
  PCTFREE 10 INITRANS 2 MAXTRANS 167 COMPUTE STATISTICS 
1507
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1508
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1509
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1510
--------------------------------------------------------
1511
--  DDL for Index UNQ_BRANCHES
1512
--------------------------------------------------------
1513
 
5924 dpurdie 1514
  CREATE UNIQUE INDEX "DEPLOYMENT_MANAGER"."UNQ_BRANCHES" ON "DEPLOYMENT_MANAGER"."BRANCHES" ("PROJ_ID", "BRANCH_NAME") 
1515
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1516
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1517
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1518
  TABLESPACE "RELEASEM_INDX" ;
4534 dpurdie 1519
--------------------------------------------------------
1520
--  Constraints for Table HIDE_PRODUCTS
1521
--------------------------------------------------------
1522
 
5924 dpurdie 1523
  ALTER TABLE "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1524
  ALTER TABLE "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" MODIFY ("PROD_ID" NOT NULL ENABLE);
1525
  ALTER TABLE "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" MODIFY ("OS_ID" NOT NULL ENABLE);
4534 dpurdie 1526
--------------------------------------------------------
1527
--  Constraints for Table BASE_ENV
1528
--------------------------------------------------------
1529
 
5924 dpurdie 1530
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1531
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" ADD CONSTRAINT "PK_BASE_ENV" PRIMARY KEY ("BASE_ENV_ID")
1532
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1533
  STORAGE(INITIAL 327680 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1534
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1535
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1536
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" MODIFY ("BOM_ID" NOT NULL ENABLE);
1537
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" MODIFY ("BASE_ENV_NAME" NOT NULL ENABLE);
1538
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" MODIFY ("BOS_ID" NOT NULL ENABLE);
1539
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" MODIFY ("BASE_ENV_ID" NOT NULL ENABLE);
4534 dpurdie 1540
--------------------------------------------------------
1541
--  Constraints for Table OS_CONTENTS
1542
--------------------------------------------------------
1543
 
5924 dpurdie 1544
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1545
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS" MODIFY ("PROD_ID" NOT NULL ENABLE);
1546
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS" MODIFY ("SEQ_NUM" NOT NULL ENABLE);
1547
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS" MODIFY ("OS_ID" NOT NULL ENABLE);
4534 dpurdie 1548
--------------------------------------------------------
1549
--  Constraints for Table BOM_NAMES
1550
--------------------------------------------------------
1551
 
5924 dpurdie 1552
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NAMES" ADD CONSTRAINT "PK_BOM_NAMES" PRIMARY KEY ("BOM_NAME_ID")
1553
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1554
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1555
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1556
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1557
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NAMES" MODIFY ("BOM_NAME" NOT NULL ENABLE);
1558
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NAMES" MODIFY ("BOM_NAME_ID" NOT NULL ENABLE);
1559
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NAMES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1560
--------------------------------------------------------
1561
--  Constraints for Table UNIT_TESTS
1562
--------------------------------------------------------
1563
 
5924 dpurdie 1564
  ALTER TABLE "DEPLOYMENT_MANAGER"."UNIT_TESTS" MODIFY ("TEST_TYPES_FK" NOT NULL ENABLE);
1565
  ALTER TABLE "DEPLOYMENT_MANAGER"."UNIT_TESTS" MODIFY ("PV_ID" NOT NULL ENABLE);
1566
  ALTER TABLE "DEPLOYMENT_MANAGER"."UNIT_TESTS" MODIFY ("TEST_ID" NOT NULL ENABLE);
1567
  ALTER TABLE "DEPLOYMENT_MANAGER"."UNIT_TESTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1568
--------------------------------------------------------
1569
--  Constraints for Table SYSTEM_CONFIGURATION
1570
--------------------------------------------------------
1571
 
5924 dpurdie 1572
  ALTER TABLE "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" ADD CONSTRAINT "PKSYSTEM_CONFIGURATION1" PRIMARY KEY ("ITEM_NAME")
1573
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1574
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1575
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1576
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1577
  ALTER TABLE "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" MODIFY ("ITEM_NAME" NOT NULL ENABLE);
1578
  ALTER TABLE "DEPLOYMENT_MANAGER"."SYSTEM_CONFIGURATION" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1579
--------------------------------------------------------
1580
--  Constraints for Table PACKAGE_TRAIL
1581
--------------------------------------------------------
1582
 
5924 dpurdie 1583
  ALTER TABLE "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" MODIFY ("DATE_TIME_STAMP" NOT NULL ENABLE);
1584
  ALTER TABLE "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1585
  ALTER TABLE "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" MODIFY ("TRAIL_ACTION" NOT NULL ENABLE);
1586
  ALTER TABLE "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" MODIFY ("PKG_ID" NOT NULL ENABLE);
1587
  ALTER TABLE "DEPLOYMENT_MANAGER"."PACKAGE_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1588
--------------------------------------------------------
1589
--  Constraints for Table OS_TRAIL
1590
--------------------------------------------------------
1591
 
5924 dpurdie 1592
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_TRAIL" MODIFY ("DATE_TIME_STAMP" NOT NULL ENABLE);
1593
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1594
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1595
--------------------------------------------------------
1596
--  Constraints for Table BOS_TYPES
1597
--------------------------------------------------------
1598
 
5924 dpurdie 1599
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOS_TYPES" ADD CONSTRAINT "PK_BOS_TYPES" PRIMARY KEY ("BOS_ID")
1600
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1601
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1602
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1603
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1604
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOS_TYPES" MODIFY ("BOS_ICON" NOT NULL ENABLE);
1605
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOS_TYPES" MODIFY ("BOS_TYPE" NOT NULL ENABLE);
1606
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOS_TYPES" MODIFY ("BOS_ID" NOT NULL ENABLE);
1607
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOS_TYPES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1608
--------------------------------------------------------
1609
--  Constraints for Table MESSAGE_BOARD
1610
--------------------------------------------------------
1611
 
5924 dpurdie 1612
  ALTER TABLE "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" MODIFY ("SUBMITION_DATE" NOT NULL ENABLE);
1613
  ALTER TABLE "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" MODIFY ("MSG_DETAILS" NOT NULL ENABLE);
1614
  ALTER TABLE "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" MODIFY ("MSG_ID" NOT NULL ENABLE);
1615
  ALTER TABLE "DEPLOYMENT_MANAGER"."MESSAGE_BOARD" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1616
--------------------------------------------------------
1617
--  Constraints for Table HARDWARE
1618
--------------------------------------------------------
1619
 
5924 dpurdie 1620
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1621
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE" ADD CONSTRAINT "PK_HARDWARE" PRIMARY KEY ("HARDWARE_NAME_ID")
1622
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1623
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1624
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1625
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1626
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE" MODIFY ("HARDWARE_NAME" NOT NULL ENABLE);
1627
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE" MODIFY ("BOM_ID" NOT NULL ENABLE);
1628
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE" MODIFY ("HARDWARE_NAME_ID" NOT NULL ENABLE);
4534 dpurdie 1629
--------------------------------------------------------
1630
--  Constraints for Table BOMS
1631
--------------------------------------------------------
1632
 
5924 dpurdie 1633
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1634
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" ADD CONSTRAINT "PK_BOMS" PRIMARY KEY ("BOM_ID")
1635
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1636
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1637
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1638
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1639
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("PARENT_BOM_ID" NOT NULL ENABLE);
1640
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("BOM_LIFECYCLE" NOT NULL ENABLE);
1641
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("IS_HIDDEN" NOT NULL ENABLE);
1642
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("IS_READONLY" NOT NULL ENABLE);
1643
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("BOM_VERSION" NOT NULL ENABLE);
1644
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("BOM_NAME_ID" NOT NULL ENABLE);
1645
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("BRANCH_ID" NOT NULL ENABLE);
1646
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" MODIFY ("BOM_ID" NOT NULL ENABLE);
4534 dpurdie 1647
--------------------------------------------------------
1648
--  Constraints for Table STATES
1649
--------------------------------------------------------
1650
 
5924 dpurdie 1651
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1652
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" ADD CONSTRAINT "PK_STATES" PRIMARY KEY ("STATE_ID")
1653
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1654
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1655
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1656
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1657
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" MODIFY ("STATE_TYPE_ENUM" NOT NULL ENABLE);
1658
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" MODIFY ("STATE_SEQ" NOT NULL ENABLE);
1659
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" MODIFY ("STATE_NAME" NOT NULL ENABLE);
1660
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" MODIFY ("PROJ_ID" NOT NULL ENABLE);
1661
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" MODIFY ("STATE_ID" NOT NULL ENABLE);
4534 dpurdie 1662
--------------------------------------------------------
1663
--  Constraints for Table NODE_TYPES
1664
--------------------------------------------------------
1665
 
5924 dpurdie 1666
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" ADD CONSTRAINT "PK_NODE_TYPES" PRIMARY KEY ("NODE_TYPE_ID")
1667
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1668
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1669
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1670
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1671
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" MODIFY ("NODE_IMAGE" NOT NULL ENABLE);
1672
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" MODIFY ("NODE_ICON" NOT NULL ENABLE);
1673
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" MODIFY ("NODE_TYPE" NOT NULL ENABLE);
1674
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" MODIFY ("NODE_TYPE_ID" NOT NULL ENABLE);
1675
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TYPES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1676
--------------------------------------------------------
1677
--  Constraints for Table BOM_STATE
1678
--------------------------------------------------------
1679
 
5924 dpurdie 1680
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1681
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" MODIFY ("IS_DISPLAYED" NOT NULL ENABLE);
1682
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" MODIFY ("USER_ID" NOT NULL ENABLE);
1683
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" MODIFY ("STATE_ID" NOT NULL ENABLE);
1684
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" MODIFY ("BOM_ID" NOT NULL ENABLE);
4534 dpurdie 1685
--------------------------------------------------------
1686
--  Constraints for Table HARDWARE_NODE
1687
--------------------------------------------------------
1688
 
5924 dpurdie 1689
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE_NODE" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1690
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE_NODE" MODIFY ("NODE_ID" NOT NULL ENABLE);
1691
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE_NODE" MODIFY ("HARDWARE_NAME_ID" NOT NULL ENABLE);
4534 dpurdie 1692
--------------------------------------------------------
5924 dpurdie 1693
--  Constraints for Table BOM_ATTACHMENTS
4534 dpurdie 1694
--------------------------------------------------------
1695
 
5924 dpurdie 1696
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_ATTACHMENTS" ADD CONSTRAINT "BOM_ATTACHMENTS_PK" PRIMARY KEY ("BOM_ID")
1697
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1698
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1699
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1700
  TABLESPACE "RELEASEM_DATA"  ENABLE;
1701
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_ATTACHMENTS" MODIFY ("BOM_ID" NOT NULL ENABLE);
1702
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_ATTACHMENTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1703
--------------------------------------------------------
5924 dpurdie 1704
--  Constraints for Table NODE_TRAIL
4534 dpurdie 1705
--------------------------------------------------------
1706
 
5924 dpurdie 1707
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TRAIL" MODIFY ("DATE_TIME_STAMP" NOT NULL ENABLE);
1708
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1709
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TRAIL" MODIFY ("NODE_ID" NOT NULL ENABLE);
1710
  ALTER TABLE "DEPLOYMENT_MANAGER"."NODE_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1711
--------------------------------------------------------
5924 dpurdie 1712
--  Constraints for Table PRODUCTS_QUEUE
4534 dpurdie 1713
--------------------------------------------------------
1714
 
5924 dpurdie 1715
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1716
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" MODIFY ("ARRIVAL_STAMP" NOT NULL ENABLE);
1717
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" MODIFY ("PROD_ID" NOT NULL ENABLE);
1718
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" MODIFY ("PROJ_ID" NOT NULL ENABLE);
4534 dpurdie 1719
--------------------------------------------------------
1720
--  Constraints for Table KNOWLEDGE_BASE
1721
--------------------------------------------------------
1722
 
5924 dpurdie 1723
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ADD CONSTRAINT "PK_KNOWLEDGE_BASE" PRIMARY KEY ("ARTICLE_ID")
1724
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1725
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1726
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1727
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1728
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("MODIFIER_ID" NOT NULL ENABLE);
1729
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("MOD_STAMP" NOT NULL ENABLE);
1730
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("CREATOR_ID" NOT NULL ENABLE);
1731
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("CREATED_STAMP" NOT NULL ENABLE);
1732
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("VISIBILITY_LEVEL_FK" NOT NULL ENABLE);
1733
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("ARTICLE_DETAILS" NOT NULL ENABLE);
1734
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("ARTICLE_TITLE" NOT NULL ENABLE);
1735
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" MODIFY ("ARTICLE_ID" NOT NULL ENABLE);
1736
  ALTER TABLE "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1737
--------------------------------------------------------
1738
--  Constraints for Table BOM_TRAIL
1739
--------------------------------------------------------
1740
 
5924 dpurdie 1741
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1742
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" MODIFY ("DATE_TIME_STAMP" NOT NULL ENABLE);
1743
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1744
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" MODIFY ("TRAIL_ACTION" NOT NULL ENABLE);
1745
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" MODIFY ("BOM_ID" NOT NULL ENABLE);
4534 dpurdie 1746
--------------------------------------------------------
1747
--  Constraints for Table TEST_TYPES
1748
--------------------------------------------------------
1749
 
5924 dpurdie 1750
  ALTER TABLE "DEPLOYMENT_MANAGER"."TEST_TYPES" ADD PRIMARY KEY ("TEST_TYPE_ID")
1751
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1752
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1753
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1754
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1755
  ALTER TABLE "DEPLOYMENT_MANAGER"."TEST_TYPES" MODIFY ("TEST_TYPE_NAME" NOT NULL ENABLE);
1756
  ALTER TABLE "DEPLOYMENT_MANAGER"."TEST_TYPES" MODIFY ("TEST_TYPE_ID" NOT NULL ENABLE);
1757
  ALTER TABLE "DEPLOYMENT_MANAGER"."TEST_TYPES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1758
--------------------------------------------------------
1759
--  Constraints for Table PRODUCT_TRAIL
1760
--------------------------------------------------------
1761
 
5924 dpurdie 1762
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_TRAIL" MODIFY ("DATE_TIME_STAMP" NOT NULL ENABLE);
1763
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1764
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1765
--------------------------------------------------------
1766
--  Constraints for Table BOM_STATE20100609
1767
--------------------------------------------------------
1768
 
5924 dpurdie 1769
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE20100609" MODIFY ("IS_DISPLAYED" NOT NULL ENABLE);
1770
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE20100609" MODIFY ("USER_ID" NOT NULL ENABLE);
1771
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE20100609" MODIFY ("STATE_ID" NOT NULL ENABLE);
1772
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE20100609" MODIFY ("BOM_ID" NOT NULL ENABLE);
1773
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE20100609" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1774
--------------------------------------------------------
1775
--  Constraints for Table ACTION_TRAIL
1776
--------------------------------------------------------
1777
 
5924 dpurdie 1778
  ALTER TABLE "DEPLOYMENT_MANAGER"."ACTION_TRAIL" MODIFY ("ACTION_EVENT" NOT NULL ENABLE);
1779
  ALTER TABLE "DEPLOYMENT_MANAGER"."ACTION_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1780
  ALTER TABLE "DEPLOYMENT_MANAGER"."ACTION_TRAIL" MODIFY ("ACTION_STAMP" NOT NULL ENABLE);
1781
  ALTER TABLE "DEPLOYMENT_MANAGER"."ACTION_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1782
--------------------------------------------------------
1783
--  Constraints for Table PRODUCT_NOTES
1784
--------------------------------------------------------
1785
 
5924 dpurdie 1786
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" ADD CONSTRAINT "PRODUCT_NOTES_PK" PRIMARY KEY ("PROD_ID")
1787
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1788
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1789
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1790
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1791
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" MODIFY ("PROD_ID" NOT NULL ENABLE);
1792
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_NOTES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1793
--------------------------------------------------------
1794
--  Constraints for Table OS_BASE_ENV
1795
--------------------------------------------------------
1796
 
5924 dpurdie 1797
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_BASE_ENV" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1798
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_BASE_ENV" MODIFY ("BASE_ENV_ID" NOT NULL ENABLE);
1799
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_BASE_ENV" MODIFY ("OS_ID" NOT NULL ENABLE);
4534 dpurdie 1800
--------------------------------------------------------
1801
--  Constraints for Table BASE_ENV_CONTENTS
1802
--------------------------------------------------------
1803
 
5924 dpurdie 1804
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1805
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" MODIFY ("SEQ_NUM" NOT NULL ENABLE);
1806
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" MODIFY ("PROD_ID" NOT NULL ENABLE);
1807
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" MODIFY ("BASE_ENV_ID" NOT NULL ENABLE);
4534 dpurdie 1808
--------------------------------------------------------
1809
--  Constraints for Table NOTIFY_USER
1810
--------------------------------------------------------
1811
 
5924 dpurdie 1812
  ALTER TABLE "DEPLOYMENT_MANAGER"."NOTIFY_USER" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1813
  ALTER TABLE "DEPLOYMENT_MANAGER"."NOTIFY_USER" MODIFY ("EVENT_ENUM" NOT NULL ENABLE);
1814
  ALTER TABLE "DEPLOYMENT_MANAGER"."NOTIFY_USER" MODIFY ("USER_ID" NOT NULL ENABLE);
1815
  ALTER TABLE "DEPLOYMENT_MANAGER"."NOTIFY_USER" MODIFY ("PROJ_ID" NOT NULL ENABLE);
4534 dpurdie 1816
--------------------------------------------------------
1817
--  Constraints for Table BOM_NOTES
1818
--------------------------------------------------------
1819
 
5924 dpurdie 1820
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1821
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" MODIFY ("ARTICLE_ID" NOT NULL ENABLE);
1822
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" MODIFY ("SCOPE_ID" NOT NULL ENABLE);
1823
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" MODIFY ("BOM_SCOPE" NOT NULL ENABLE);
1824
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" MODIFY ("BOM_ID" NOT NULL ENABLE);
4534 dpurdie 1825
--------------------------------------------------------
1826
--  Constraints for Table PRODUCTION_BOM
1827
--------------------------------------------------------
1828
 
5924 dpurdie 1829
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1830
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" MODIFY ("BOM_ID" NOT NULL ENABLE);
1831
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" MODIFY ("PROJ_ID" NOT NULL ENABLE);
4534 dpurdie 1832
--------------------------------------------------------
1833
--  Constraints for Table NETWORK_NODES
1834
--------------------------------------------------------
1835
 
5924 dpurdie 1836
  ALTER TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1837
  ALTER TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" ADD CONSTRAINT "PK_NETWORK_NODES" PRIMARY KEY ("NODE_ID")
1838
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1839
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1840
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1841
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1842
  ALTER TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" MODIFY ("NODE_NAME" NOT NULL ENABLE);
1843
  ALTER TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" MODIFY ("NODE_TYPE_ID" NOT NULL ENABLE);
1844
  ALTER TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" MODIFY ("NODE_ID" NOT NULL ENABLE);
4534 dpurdie 1845
--------------------------------------------------------
1846
--  Constraints for Table PRODUCT_DETAILS
1847
--------------------------------------------------------
1848
 
5924 dpurdie 1849
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" ADD CONSTRAINT "PKPRODUCT_DETAILS" PRIMARY KEY ("PROD_ID")
1850
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1851
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1852
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1853
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1854
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" MODIFY ("PROD_ID" NOT NULL ENABLE);
1855
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCT_DETAILS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1856
--------------------------------------------------------
1857
--  Constraints for Table DM_PROJECTS
1858
--------------------------------------------------------
1859
 
5924 dpurdie 1860
  ALTER TABLE "DEPLOYMENT_MANAGER"."DM_PROJECTS" ADD CONSTRAINT "PK_DM_PROJECTS" PRIMARY KEY ("PROJ_ID")
1861
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1862
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1863
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1864
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1865
  ALTER TABLE "DEPLOYMENT_MANAGER"."DM_PROJECTS" MODIFY ("PROJ_NAME" NOT NULL ENABLE);
1866
  ALTER TABLE "DEPLOYMENT_MANAGER"."DM_PROJECTS" MODIFY ("PROJ_ID" NOT NULL ENABLE);
1867
  ALTER TABLE "DEPLOYMENT_MANAGER"."DM_PROJECTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1868
--------------------------------------------------------
1869
--  Constraints for Table BRANCHES
1870
--------------------------------------------------------
1871
 
5924 dpurdie 1872
  ALTER TABLE "DEPLOYMENT_MANAGER"."BRANCHES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1873
  ALTER TABLE "DEPLOYMENT_MANAGER"."BRANCHES" ADD CONSTRAINT "PK_BRANCHES" PRIMARY KEY ("BRANCH_ID")
1874
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1875
  STORAGE(INITIAL 131072 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1876
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1877
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1878
  ALTER TABLE "DEPLOYMENT_MANAGER"."BRANCHES" MODIFY ("BRANCH_NAME" NOT NULL ENABLE);
1879
  ALTER TABLE "DEPLOYMENT_MANAGER"."BRANCHES" MODIFY ("PROJ_ID" NOT NULL ENABLE);
1880
  ALTER TABLE "DEPLOYMENT_MANAGER"."BRANCHES" MODIFY ("BRANCH_ID" NOT NULL ENABLE);
4534 dpurdie 1881
--------------------------------------------------------
1882
--  Constraints for Table BOM_CONTENTS
1883
--------------------------------------------------------
1884
 
5924 dpurdie 1885
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_CONTENTS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1886
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_CONTENTS" MODIFY ("NODE_ID" NOT NULL ENABLE);
1887
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_CONTENTS" MODIFY ("BOM_ID" NOT NULL ENABLE);
4534 dpurdie 1888
--------------------------------------------------------
1889
--  Constraints for Table REJECTION_TRAIL
1890
--------------------------------------------------------
1891
 
5924 dpurdie 1892
  ALTER TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" MODIFY ("USER_ID" NOT NULL ENABLE);
1893
  ALTER TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" MODIFY ("DATE_TIME_STAMP" NOT NULL ENABLE);
1894
  ALTER TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" MODIFY ("REJECT_SEQ" NOT NULL ENABLE);
1895
  ALTER TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" MODIFY ("ENTITY_ID" NOT NULL ENABLE);
1896
  ALTER TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" MODIFY ("ENUM_ENTITY_TYPE" NOT NULL ENABLE);
1897
  ALTER TABLE "DEPLOYMENT_MANAGER"."REJECTION_TRAIL" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
4534 dpurdie 1898
--------------------------------------------------------
1899
--  Constraints for Table RELATED_ARTICLES
1900
--------------------------------------------------------
1901
 
5924 dpurdie 1902
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1903
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" MODIFY ("RARTICLE_ID" NOT NULL ENABLE);
1904
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" MODIFY ("ARTICLE_ID" NOT NULL ENABLE);
4534 dpurdie 1905
--------------------------------------------------------
1906
--  Constraints for Table PROCESSES_CONFIG
1907
--------------------------------------------------------
1908
 
5924 dpurdie 1909
  ALTER TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1910
  ALTER TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" MODIFY ("PKG_ID" NOT NULL ENABLE);
1911
  ALTER TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" MODIFY ("PKG_HEALTH_TAG" NOT NULL ENABLE);
1912
  ALTER TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" MODIFY ("OS_ID" NOT NULL ENABLE);
1913
  ALTER TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" MODIFY ("PROD_ID" NOT NULL ENABLE);
4534 dpurdie 1914
--------------------------------------------------------
1915
--  Constraints for Table RELEASE_AUTHORISATION
1916
--------------------------------------------------------
1917
 
5924 dpurdie 1918
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1919
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" MODIFY ("TESTER_ID" NOT NULL ENABLE);
1920
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" MODIFY ("BOM_ID" NOT NULL ENABLE);
1921
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" MODIFY ("PV_ID" NOT NULL ENABLE);
4534 dpurdie 1922
--------------------------------------------------------
1923
--  Constraints for Table OPERATING_SYSTEMS
1924
--------------------------------------------------------
1925
 
5924 dpurdie 1926
  ALTER TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
1927
  ALTER TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ADD CONSTRAINT "PK_OPERATING_SYSTEMS" PRIMARY KEY ("OS_ID")
1928
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
1929
  STORAGE(INITIAL 2097152 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
1930
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
1931
  TABLESPACE "RELEASEM_INDX"  ENABLE;
1932
  ALTER TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" MODIFY ("NODE_ID" NOT NULL ENABLE);
1933
  ALTER TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" MODIFY ("OS_NAME" NOT NULL ENABLE);
1934
  ALTER TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" MODIFY ("OS_ID" NOT NULL ENABLE);
4534 dpurdie 1935
--------------------------------------------------------
1936
--  Ref Constraints for Table BASE_ENV
1937
--------------------------------------------------------
1938
 
5924 dpurdie 1939
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" ADD CONSTRAINT "FK_BASE_ENV_REF_BOMS" FOREIGN KEY ("BOM_ID")
1940
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
1941
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV" ADD CONSTRAINT "FK_BASE_ENV_REF_BOS_TYPES" FOREIGN KEY ("BOS_ID")
1942
	  REFERENCES "DEPLOYMENT_MANAGER"."BOS_TYPES" ("BOS_ID") ENABLE;
4534 dpurdie 1943
--------------------------------------------------------
1944
--  Ref Constraints for Table BASE_ENV_CONTENTS
1945
--------------------------------------------------------
1946
 
5924 dpurdie 1947
  ALTER TABLE "DEPLOYMENT_MANAGER"."BASE_ENV_CONTENTS" ADD CONSTRAINT "FK_BASE_ENV_CONT_REF_BASE_ENV" FOREIGN KEY ("BASE_ENV_ID")
1948
	  REFERENCES "DEPLOYMENT_MANAGER"."BASE_ENV" ("BASE_ENV_ID") ENABLE;
4534 dpurdie 1949
--------------------------------------------------------
1950
--  Ref Constraints for Table BOMS
1951
--------------------------------------------------------
1952
 
5924 dpurdie 1953
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" ADD CONSTRAINT "FK_BOMS_REF_BOM_NAME" FOREIGN KEY ("BOM_NAME_ID")
1954
	  REFERENCES "DEPLOYMENT_MANAGER"."BOM_NAMES" ("BOM_NAME_ID") ENABLE;
1955
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOMS" ADD CONSTRAINT "FK_BOMS_REF_BRANCHES" FOREIGN KEY ("BRANCH_ID")
1956
	  REFERENCES "DEPLOYMENT_MANAGER"."BRANCHES" ("BRANCH_ID") ENABLE;
4534 dpurdie 1957
--------------------------------------------------------
1958
--  Ref Constraints for Table BOM_CONTENTS
1959
--------------------------------------------------------
1960
 
5924 dpurdie 1961
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_CONTENTS" ADD CONSTRAINT "FK_BOM_CONT_REF_BOMS" FOREIGN KEY ("BOM_ID")
1962
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
1963
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_CONTENTS" ADD CONSTRAINT "FK_BOM_CONT_REF_NETWORK" FOREIGN KEY ("NODE_ID")
1964
	  REFERENCES "DEPLOYMENT_MANAGER"."NETWORK_NODES" ("NODE_ID") ENABLE;
4534 dpurdie 1965
--------------------------------------------------------
1966
--  Ref Constraints for Table BOM_NOTES
1967
--------------------------------------------------------
1968
 
5924 dpurdie 1969
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" ADD CONSTRAINT "FK_BOM_NOTES_REF_BOMS" FOREIGN KEY ("BOM_ID")
1970
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
1971
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_NOTES" ADD CONSTRAINT "FK_BOM_NOTE_REF_HELP_NOTE" FOREIGN KEY ("ARTICLE_ID")
1972
	  REFERENCES "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("ARTICLE_ID") ENABLE;
4534 dpurdie 1973
--------------------------------------------------------
1974
--  Ref Constraints for Table BOM_STATE
1975
--------------------------------------------------------
1976
 
5924 dpurdie 1977
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" ADD CONSTRAINT "FK_BOM_STAT_REF_BOMS" FOREIGN KEY ("BOM_ID")
1978
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
1979
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_STATE" ADD CONSTRAINT "FK_BOM_STAT_REF_STATES" FOREIGN KEY ("STATE_ID")
1980
	  REFERENCES "DEPLOYMENT_MANAGER"."STATES" ("STATE_ID") ENABLE;
4534 dpurdie 1981
--------------------------------------------------------
1982
--  Ref Constraints for Table BOM_TRAIL
1983
--------------------------------------------------------
1984
 
5924 dpurdie 1985
  ALTER TABLE "DEPLOYMENT_MANAGER"."BOM_TRAIL" ADD CONSTRAINT "FK_BOM_TRAIL_REF_BOMS" FOREIGN KEY ("BOM_ID")
1986
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
4534 dpurdie 1987
--------------------------------------------------------
1988
--  Ref Constraints for Table BRANCHES
1989
--------------------------------------------------------
1990
 
5924 dpurdie 1991
  ALTER TABLE "DEPLOYMENT_MANAGER"."BRANCHES" ADD CONSTRAINT "FK_BRANCHES_RE_DM_PROJ" FOREIGN KEY ("PROJ_ID")
1992
	  REFERENCES "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_ID") ENABLE;
4534 dpurdie 1993
--------------------------------------------------------
1994
--  Ref Constraints for Table HARDWARE
1995
--------------------------------------------------------
1996
 
5924 dpurdie 1997
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE" ADD CONSTRAINT "FK_HARDWARE_REF_BOMS" FOREIGN KEY ("BOM_ID")
1998
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
4534 dpurdie 1999
--------------------------------------------------------
2000
--  Ref Constraints for Table HARDWARE_NODE
2001
--------------------------------------------------------
2002
 
5924 dpurdie 2003
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE_NODE" ADD CONSTRAINT "FK_HARDWARE_NODE_REF_HARDWARE" FOREIGN KEY ("HARDWARE_NAME_ID")
2004
	  REFERENCES "DEPLOYMENT_MANAGER"."HARDWARE" ("HARDWARE_NAME_ID") ENABLE;
2005
  ALTER TABLE "DEPLOYMENT_MANAGER"."HARDWARE_NODE" ADD CONSTRAINT "FK_HARDWARE_REF_NETWORK" FOREIGN KEY ("NODE_ID")
2006
	  REFERENCES "DEPLOYMENT_MANAGER"."NETWORK_NODES" ("NODE_ID") ENABLE;
4534 dpurdie 2007
--------------------------------------------------------
2008
--  Ref Constraints for Table HIDE_PRODUCTS
2009
--------------------------------------------------------
2010
 
5924 dpurdie 2011
  ALTER TABLE "DEPLOYMENT_MANAGER"."HIDE_PRODUCTS" ADD FOREIGN KEY ("OS_ID")
2012
	  REFERENCES "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OS_ID") DISABLE;
4534 dpurdie 2013
--------------------------------------------------------
2014
--  Ref Constraints for Table NETWORK_NODES
2015
--------------------------------------------------------
2016
 
5924 dpurdie 2017
  ALTER TABLE "DEPLOYMENT_MANAGER"."NETWORK_NODES" ADD CONSTRAINT "FK_NETWORK__REF_NODE_TYP" FOREIGN KEY ("NODE_TYPE_ID")
2018
	  REFERENCES "DEPLOYMENT_MANAGER"."NODE_TYPES" ("NODE_TYPE_ID") ENABLE;
4534 dpurdie 2019
--------------------------------------------------------
2020
--  Ref Constraints for Table NOTIFY_USER
2021
--------------------------------------------------------
2022
 
5924 dpurdie 2023
  ALTER TABLE "DEPLOYMENT_MANAGER"."NOTIFY_USER" ADD CONSTRAINT "FK_NOTIFY_USR_REFE_DM_PROJ" FOREIGN KEY ("PROJ_ID")
2024
	  REFERENCES "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_ID") ENABLE;
4534 dpurdie 2025
--------------------------------------------------------
2026
--  Ref Constraints for Table OPERATING_SYSTEMS
2027
--------------------------------------------------------
2028
 
5924 dpurdie 2029
  ALTER TABLE "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ADD CONSTRAINT "FK_OPERATIN_REF_NETWORK" FOREIGN KEY ("NODE_ID")
2030
	  REFERENCES "DEPLOYMENT_MANAGER"."NETWORK_NODES" ("NODE_ID") ENABLE;
4534 dpurdie 2031
--------------------------------------------------------
2032
--  Ref Constraints for Table OS_BASE_ENV
2033
--------------------------------------------------------
2034
 
5924 dpurdie 2035
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_BASE_ENV" ADD CONSTRAINT "FK_OS_BASE_ENV_REF_BASE_ENV" FOREIGN KEY ("BASE_ENV_ID")
2036
	  REFERENCES "DEPLOYMENT_MANAGER"."BASE_ENV" ("BASE_ENV_ID") ENABLE;
2037
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_BASE_ENV" ADD CONSTRAINT "FK_OS_BASE_ENV_REF_OS" FOREIGN KEY ("OS_ID")
2038
	  REFERENCES "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OS_ID") ENABLE;
4534 dpurdie 2039
--------------------------------------------------------
2040
--  Ref Constraints for Table OS_CONTENTS
2041
--------------------------------------------------------
2042
 
5924 dpurdie 2043
  ALTER TABLE "DEPLOYMENT_MANAGER"."OS_CONTENTS" ADD CONSTRAINT "FK_OS_CONTE_REF_OPERATIN" FOREIGN KEY ("OS_ID")
2044
	  REFERENCES "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OS_ID") ENABLE;
4534 dpurdie 2045
--------------------------------------------------------
2046
--  Ref Constraints for Table PROCESSES_CONFIG
2047
--------------------------------------------------------
2048
 
5924 dpurdie 2049
  ALTER TABLE "DEPLOYMENT_MANAGER"."PROCESSES_CONFIG" ADD CONSTRAINT "FK_PROC_CONFIG_REF_OS" FOREIGN KEY ("OS_ID")
2050
	  REFERENCES "DEPLOYMENT_MANAGER"."OPERATING_SYSTEMS" ("OS_ID") DISABLE;
4534 dpurdie 2051
--------------------------------------------------------
2052
--  Ref Constraints for Table PRODUCTION_BOM
2053
--------------------------------------------------------
2054
 
5924 dpurdie 2055
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" ADD FOREIGN KEY ("PROJ_ID")
2056
	  REFERENCES "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_ID") ENABLE;
2057
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" ADD FOREIGN KEY ("BOM_ID")
2058
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
2059
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTION_BOM" ADD FOREIGN KEY ("STATE_ID")
2060
	  REFERENCES "DEPLOYMENT_MANAGER"."STATES" ("STATE_ID") ENABLE;
4534 dpurdie 2061
--------------------------------------------------------
2062
--  Ref Constraints for Table PRODUCTS_QUEUE
2063
--------------------------------------------------------
2064
 
5924 dpurdie 2065
  ALTER TABLE "DEPLOYMENT_MANAGER"."PRODUCTS_QUEUE" ADD CONSTRAINT "FK_PRODUCTS_REFERENCE_DM_PROJE" FOREIGN KEY ("PRODQ_ID")
2066
	  REFERENCES "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_ID") ENABLE;
4534 dpurdie 2067
--------------------------------------------------------
2068
--  Ref Constraints for Table RELATED_ARTICLES
2069
--------------------------------------------------------
2070
 
5924 dpurdie 2071
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" ADD CONSTRAINT "FK_RA_ARTID_REF_ARTID" FOREIGN KEY ("ARTICLE_ID")
2072
	  REFERENCES "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("ARTICLE_ID") ENABLE;
2073
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELATED_ARTICLES" ADD CONSTRAINT "FK_RA_RARTID_REF_ARTID" FOREIGN KEY ("RARTICLE_ID")
2074
	  REFERENCES "DEPLOYMENT_MANAGER"."KNOWLEDGE_BASE" ("ARTICLE_ID") ENABLE;
4534 dpurdie 2075
--------------------------------------------------------
2076
--  Ref Constraints for Table RELEASE_AUTHORISATION
2077
--------------------------------------------------------
2078
 
5924 dpurdie 2079
  ALTER TABLE "DEPLOYMENT_MANAGER"."RELEASE_AUTHORISATION" ADD CONSTRAINT "RELEASE_AUTHORISATION_R01" FOREIGN KEY ("BOM_ID")
2080
	  REFERENCES "DEPLOYMENT_MANAGER"."BOMS" ("BOM_ID") ENABLE;
4534 dpurdie 2081
--------------------------------------------------------
2082
--  Ref Constraints for Table STATES
2083
--------------------------------------------------------
2084
 
5924 dpurdie 2085
  ALTER TABLE "DEPLOYMENT_MANAGER"."STATES" ADD CONSTRAINT "FK_STATES_REF_DM_PROJ" FOREIGN KEY ("PROJ_ID")
2086
	  REFERENCES "DEPLOYMENT_MANAGER"."DM_PROJECTS" ("PROJ_ID") ENABLE;
3926 dpurdie 2087
--------------------------------------------------------
2088
--  DDL for Function GET_DATE
2089
--------------------------------------------------------
2090
 
5924 dpurdie 2091
  CREATE OR REPLACE FUNCTION "DEPLOYMENT_MANAGER"."GET_DATE" RETURN DATE IS
3926 dpurdie 2092
 
2093
/* ---------------------------------------------------------------------------
2094
    Version: 1.0.0
2095
   --------------------------------------------------------------------------- */
2096
 
2097
BEGIN
2098
 
2099
	RETURN TO_DATE( TO_CHAR( SYSDATE,'DD-MON-YYYY' ),'DD-MON-YYYY' );
2100
 
2101
END GET_DATE;
2102
 
2103
/
2104
--------------------------------------------------------
2105
--  DDL for Function GET_DATETIME
2106
--------------------------------------------------------
2107
 
5924 dpurdie 2108
  CREATE OR REPLACE FUNCTION "DEPLOYMENT_MANAGER"."GET_DATETIME" RETURN DATE IS
3926 dpurdie 2109
 
2110
/* ---------------------------------------------------------------------------
2111
    Version: 1.0.0
2112
   --------------------------------------------------------------------------- */
2113
 
2114
BEGIN
2115
 
2116
	RETURN TO_DATE( TO_CHAR( SYSDATE,'DD-MON-YYYY HH24:MI:SS' ),'DD-MON-YYYY HH24:MI:SS' );
2117
 
2118
END GET_DATETIME;
2119
 
2120
/
2121
--------------------------------------------------------
2122
--  DDL for Function GET_SYSTEM_VALUE
2123
--------------------------------------------------------
2124
 
5924 dpurdie 2125
  CREATE OR REPLACE FUNCTION "DEPLOYMENT_MANAGER"."GET_SYSTEM_VALUE" ( sItemName IN SYSTEM_CONFIGURATION.ITEM_NAME%TYPE ) RETURN SYSTEM_CONFIGURATION.ITEM_VALUE%TYPE IS
3926 dpurdie 2126
 
2127
/* ---------------------------------------------------------------------------
2128
    Version: 1.0.0
2129
   --------------------------------------------------------------------------- */
2130
 
2131
ItemValue SYSTEM_CONFIGURATION.ITEM_VALUE%TYPE;
2132
 
2133
BEGIN
2134
	-- Get system value
2135
	SELECT sc.ITEM_VALUE INTO ItemValue
2136
	  FROM SYSTEM_CONFIGURATION sc
2137
	 WHERE sc.ITEM_NAME = sItemName;
2138
 
2139
	RETURN ItemValue;
2140
 
2141
END GET_SYSTEM_VALUE;
2142
 
2143
/
2144
--------------------------------------------------------
2145
--  DDL for Function IN_LIST_NUMBER
2146
--------------------------------------------------------
2147
 
5924 dpurdie 2148
  CREATE OR REPLACE FUNCTION "DEPLOYMENT_MANAGER"."IN_LIST_NUMBER" ( sInList IN VARCHAR2 ) RETURN DEPMGR_NUMBER_TAB_t IS
3926 dpurdie 2149
 
2150
/* ---------------------------------------------------------------------------
5924 dpurdie 2151
    Version: 2.0.0
3926 dpurdie 2152
   --------------------------------------------------------------------------- */
2153
 
5924 dpurdie 2154
  sync_rtags    DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
2155
  pos           NUMBER;
2156
  in_list       VARCHAR2(10000) := sInList || ',';
3926 dpurdie 2157
 
2158
BEGIN
2159
 
2160
	IF NOT sInList IS NULL
2161
	THEN
2162
		LOOP
2163
	        EXIT WHEN in_list IS NULL;
2164
	        pos := INSTR ( in_list, ',' );
2165
	        sync_rtags.extend;
2166
	        sync_rtags(sync_rtags.count) := LTRIM ( RTRIM ( SUBSTR ( in_list, 1, pos-1 ) ) );
2167
	        in_list := SUBSTR ( in_list, pos+1 );
2168
		END LOOP;
2169
	END IF;
2170
 
2171
	RETURN sync_rtags;
2172
END IN_LIST_NUMBER;
2173
 
2174
/
2175
--------------------------------------------------------
2176
--  DDL for Function PRINT_SBOM_PACKAGES
2177
--------------------------------------------------------
2178
 
5924 dpurdie 2179
  CREATE OR REPLACE FUNCTION "DEPLOYMENT_MANAGER"."PRINT_SBOM_PACKAGES" (v_dm_branch_name VARCHAR2, v_sbom_version VARCHAR2) RETURN NUMBER IS
2180
  TYPE CurTyp IS REF CURSOR;
2181
 
2182
  cur      CurTyp;
2183
  SqlCmd   VARCHAR2(4000);
2184
  ln_pv_id NUMBER;
3926 dpurdie 2185
BEGIN
2186
 
5924 dpurdie 2187
  SqlCmd := '
2188
             CREATE GLOBAL TEMPORARY TABLE sbom_packages
2189
               ON COMMIT PRESERVE ROWS
2190
             AS SELECT DISTINCT pv.pv_id
2191
                    FROM deployment_manager.boms b INNER JOIN deployment_manager.bom_contents bc
2192
                                                                                   ON b.bom_id = bc.bom_id
2193
                                                   INNER JOIN deployment_manager.branches br
2194
                                                                                   ON b.branch_id = br.branch_id
2195
                                                   INNER JOIN deployment_manager.operating_systems os
2196
                                                                                   ON bc.node_id = os.node_id
2197
                                                   INNER JOIN deployment_manager.os_contents osc
2198
                                                                                   ON os.os_id = osc.os_id
2199
                                                   INNER JOIN release_manager.package_versions pv
2200
                                                                                   ON osc.prod_id = pv.pv_id
2201
                WHERE br.branch_name = v_dm_branch_name
2202
                  AND b.bom_version||''.''||b.bom_lifecycle = v_sbom_version
2203
            ';
2204
  EXECUTE IMMEDIATE SqlCmd;
3926 dpurdie 2205
 
5924 dpurdie 2206
  OPEN cur FOR 'SELECT DISTINCT pv_id FROM sbom_packages';
2207
  LOOP
2208
    FETCH cur INTO ln_pv_id;
2209
    EXIT WHEN cur%NOTFOUND;
3926 dpurdie 2210
 
5924 dpurdie 2211
    SqlCmd := '
2212
               INSERT INTO sbom_packages
2213
               SELECT DISTINCT PV.pv_id
2214
                 FROM release_content RC INNER JOIN package_versions PV
2215
                                                 ON PV.pv_id = RC.pv_id
2216
                                         INNER JOIN packages P
2217
                                                 ON P.pkg_id = PV.pkg_id
2218
               WHERE PV.pv_id IN (SELECT DISTINCT dpv_id
2219
                                    FROM package_dependencies
2220
                                  START WITH pv_id = ' || ln_pv_id || '
2221
                                  CONNECT BY pv_id = PRIOR dpv_id)
2222
              ';
2223
    EXECUTE IMMEDIATE SqlCmd;
3926 dpurdie 2224
  END LOOP;
5924 dpurdie 2225
  CLOSE cur;
3926 dpurdie 2226
 
5924 dpurdie 2227
  OPEN cur FOR 'SELECT DISTINCT pv_id FROM sbom_packages';
2228
  LOOP
2229
    FETCH cur INTO ln_pv_id;
2230
    EXIT WHEN cur%NOTFOUND;
2231
 
2232
    Dbms_Output.put_line(ln_pv_id);
3926 dpurdie 2233
  END LOOP;
5924 dpurdie 2234
  CLOSE cur;
3926 dpurdie 2235
 
2236
  RETURN 0;
2237
END;
2238
 
2239
/
2240
--------------------------------------------------------
2241
--  DDL for Function STRREPLACE
2242
--------------------------------------------------------
2243
 
5924 dpurdie 2244
  CREATE OR REPLACE FUNCTION "DEPLOYMENT_MANAGER"."STRREPLACE" (str varchar2, from_str varchar2, to_str varchar2)
3926 dpurdie 2245
  return varchar2
2246
AS
2247
  str_temp varchar2(4000);
2248
  str_pos  number := instr(str, from_str);
2249
BEGIN
2250
  str_temp := str;
2251
  while ( str_pos > 0 ) loop
2252
    str_temp := substr(str_temp, 0, str_pos-1) || to_str ||
2253
                substr(str_temp, str_pos + length(from_str));
2254
    str_pos  := instr(str_temp, from_str);
2255
  end loop;
2256
  return str_temp;
2257
END;
2258
 
2259
/
2260
--------------------------------------------------------
2261
--  DDL for Package PK_BASE_ENV
2262
--------------------------------------------------------
2263
 
5924 dpurdie 2264
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_BASE_ENV" IS
3926 dpurdie 2265
 
2266
PROCEDURE Add_Base_Env ( sBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
2267
						 nBosId IN BASE_ENV.BOS_ID%TYPE,
2268
						 nBomId IN BASE_ENV.BOM_ID%TYPE,
2269
						 nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2270
						 nUserId IN NUMBER );
2271
 
2272
PROCEDURE Update_Base_Env ( nBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE,
2273
							sBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
2274
						 	nBosId IN BASE_ENV.BOS_ID%TYPE,
2275
							nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2276
							nUserId IN NUMBER );		
2277
 
2278
FUNCTION Get_Base_Env_Id ( sBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
2279
						   nBomId IN BASE_ENV.BOM_ID%TYPE ) RETURN BASE_ENV.BASE_ENV_ID%TYPE;
2280
 
2281
PROCEDURE Destroy_Base_Env ( nBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE,
2282
 		  				   	 nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2283
						 	 nUserId IN NUMBER);
2284
 
2285
PROCEDURE Add_Product ( sProdIdList IN VARCHAR2,
2286
		  			  	nBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE,
2287
						nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2288
						nUserId IN NUMBER );
2289
 
2290
PROCEDURE Add_Product_Wrap ( nPkgId IN NUMBER,
2291
		  				   	 sProdVersion IN VARCHAR2,
2292
							 nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
2293
							 nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2294
							 nUserId IN NUMBER,
2295
							 sComments IN VARCHAR2  );
2296
 
2297
PROCEDURE Remove_Products ( sProdIdList IN VARCHAR2,
2298
		  			  	  	nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
2299
							nUserId IN NUMBER );
2300
 
2301
PROCEDURE Update_Product ( nOldProdId IN BASE_ENV_CONTENTS.PROD_ID%TYPE,
2302
						   sNewProdIdVersion IN VARCHAR2,
2303
						   nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
2304
						   nSeqNum IN BASE_ENV_CONTENTS.SEQ_NUM%TYPE,
2305
						   sComments IN BASE_ENV_CONTENTS.BASE_ENV_COMMENTS%TYPE,
2306
						   sSunOSElectronicName IN PACKAGES.SUNOS_ELECTRONIC_NAME%TYPE,
2307
						   sWinElectronicName IN PACKAGES.WIN_ELECTRONIC_NAME%TYPE,
2308
						   sNotXML IN BASE_ENV_CONTENTS.NOT_XML%TYPE,
2309
						   sPatchElectronicName IN PACKAGE_VERSIONS.PATCH_ELECTRONIC_NAME%TYPE,
2310
						   nUserId IN NUMBER,
2311
						   outProdId OUT PACKAGE_VERSIONS.PV_ID%TYPE );
2312
 
2313
PROCEDURE Shift_Product_SeqNum ( nProdId IN BASE_ENV_CONTENTS.PROD_ID%TYPE,
2314
		  				 	     nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
2315
						 		 nToSeqNum IN BASE_ENV_CONTENTS.SEQ_NUM%TYPE );
2316
 
2317
PROCEDURE Sort_Products ( sProdIdOrder IN VARCHAR2,
2318
		  			  	  nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
2319
						  nUserId IN NUMBER );
2320
 
2321
 
2322
END pk_Base_Env;
2323
 
2324
/
2325
--------------------------------------------------------
2326
--  DDL for Package PK_BOM
2327
--------------------------------------------------------
2328
 
5924 dpurdie 2329
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_BOM" IS
3926 dpurdie 2330
 
2331
PROCEDURE Add_Bom ( sBomName IN BOM_NAMES.BOM_NAME%TYPE DEFAULT NULL,
2332
		  		  	sBomVersion IN BOMS.BOM_VERSION%TYPE,
2333
		  		  	sBomLifeCycle IN BOMS.BOM_LIFECYCLE%TYPE,		
2334
					sBomComments IN BOMS.BOM_COMMENTS%TYPE DEFAULT NULL,
2335
					nToBranchId IN BOMS.BRANCH_ID%TYPE,
2336
					nFromBomId IN BOMS.BOM_ID%TYPE DEFAULT NULL,
2337
					nRtagId IN BOMS.RTAG_ID_FK%TYPE,
2338
					nUserId IN BOM_STATE.USER_ID%TYPE );
2339
 
2340
PROCEDURE Update_Bom ( nBomId IN BOMS.BOM_ID%TYPE,
2341
					   nRtagId IN BOMS.RTAG_ID_FK%TYPE,
2342
					   sBomComment IN BOMS.BOM_COMMENTS%TYPE,
2343
					   nUserId IN NUMBER );		
2344
 
2345
PROCEDURE Update_ProdBom ( nBomId IN BOMS.BOM_ID%TYPE,
2346
					   nRtagId IN BOMS.RTAG_ID_FK%TYPE,
2347
					   sBomComment IN BOMS.BOM_COMMENTS%TYPE,
2348
					   nUserId IN NUMBER );							   			
2349
 
2350
FUNCTION New_Bom_Name ( sBomName IN BOM_NAMES.BOM_NAME%TYPE ) RETURN BOM_NAMES.BOM_NAME_ID%TYPE;	
2351
FUNCTION New_Bom_Name ( nFromBomId IN BOMS.BOM_NAME_ID%TYPE ) RETURN BOMS.BOM_NAME_ID%TYPE;
2352
 
2353
PROCEDURE Accept_Reject ( nBomId IN BOMS.BOM_ID%TYPE,
2354
						  cIsRejected IN BOMS.IS_REJECTED%TYPE,
2355
						  sComments IN REJECTION_TRAIL.COMMENTS%TYPE,
2356
						  nStateId IN BOM_STATE.STATE_ID%TYPE DEFAULT NULL,
2357
						  nUserId IN REJECTION_TRAIL.USER_ID%TYPE  );
2358
 
2359
PROCEDURE Set_Bom_Official ( nBomId IN BOMS.BOM_ID%TYPE,
2360
							 cIsOfficial IN BOMS.IS_READONLY%TYPE,
2361
							 nStateId IN BOM_STATE.STATE_ID%TYPE,
2362
							 nUserId IN NUMBER );		
2363
 
2364
PROCEDURE Update_Nodes_Version ( nBomId IN BOMS.BOM_ID%TYPE,
2365
							 	 nUserId IN NUMBER );							 		
2366
 
2367
PROCEDURE Destroy_Bom ( nBomId IN VARCHAR2 );
2368
 
2369
PROCEDURE Destroy_BaseEnv ( nBaseEndIdCollector IN DEPMGR_NUMBER_TAB_t );
2370
 
2371
PROCEDURE Destroy_Hardware ( nHardwareNameIdCollector IN DEPMGR_NUMBER_TAB_t );			
2372
 
2373
PROCEDURE Get_Next_Version (nFromBomId IN BOMS.BOM_ID%TYPE,
2374
							nToBranchId IN BOMS.BRANCH_ID%TYPE,
2375
							sNextVersion OUT BOMS.BOM_VERSION%TYPE,
2376
							sNextLifeCycle OUT BOMS.BOM_LIFECYCLE%TYPE,
2377
							nParentBomId IN OUT BOMS.PARENT_BOM_ID%TYPE,
2378
							nBomNameId IN BOMS.BOM_NAME_ID%TYPE );	
2379
 
2380
PROCEDURE Release_To ( nBomId IN BOM_STATE.BOM_ID%TYPE,
2381
					   nUserId IN BOM_STATE.USER_ID%TYPE,
2382
					   nToState IN BOM_STATE.STATE_ID%TYPE DEFAULT NULL,
2383
					   sComments IN BOM_TRAIL.TRAIL_COMMENTS%TYPE DEFAULT NULL );	
2384
 
2385
PROCEDURE Accept_Reject_Comments ( nBomId IN BOMS.BOM_ID%TYPE,
2386
		  						   nRejectSeq IN REJECTION_TRAIL.REJECT_SEQ%TYPE,
2387
						  	   	   sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL,
2388
						       	   nUserId IN REJECTION_TRAIL.USER_ID%TYPE );					   					
2389
 
2390
PROCEDURE Log_Bom_Trail ( nBomId IN BOM_TRAIL.BOM_ID%TYPE,
2391
						  sAction IN BOM_TRAIL.TRAIL_ACTION%TYPE,
2392
						  nUserId IN BOM_TRAIL.USER_ID%TYPE,
2393
						  sComments IN BOM_TRAIL.TRAIL_COMMENTS%TYPE DEFAULT NULL  );	
2394
 
2395
PROCEDURE Log_Node_Trail ( nNodeId IN NODE_TRAIL.NODE_ID%TYPE,
2396
						   sAction IN NODE_TRAIL.TRAIL_ACTION%TYPE,
2397
						   nUserId IN NODE_TRAIL.USER_ID%TYPE  );	
2398
 
2399
PROCEDURE Log_Os_Trail ( nOsId IN OS_TRAIL.OS_ID%TYPE,
2400
						  sAction IN OS_TRAIL.TRAIL_ACTION%TYPE,
2401
						  nUserId IN OS_TRAIL.USER_ID%TYPE  );						   
2402
 
2403
 
2404
 
2405
END pk_Bom;
2406
 
2407
/
2408
--------------------------------------------------------
2409
--  DDL for Package PK_BOM_RPT
2410
--------------------------------------------------------
2411
 
5924 dpurdie 2412
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_BOM_RPT" AS
3926 dpurdie 2413
	   TYPE TOC_Type IS REF CURSOR RETURN TableOfContents%ROWTYPE;
2414
END PK_BOM_RPT;
2415
 
2416
 
2417
 
2418
/
2419
--------------------------------------------------------
2420
--  DDL for Package PK_NETWORK_NODE
2421
--------------------------------------------------------
2422
 
5924 dpurdie 2423
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_NETWORK_NODE" IS
3926 dpurdie 2424
/* ---------------------------------------------------------------------------
2425
    Version: 1.0.0
2426
   --------------------------------------------------------------------------- */
2427
 
2428
PROCEDURE Add_Node ( sNodeName IN NETWORK_NODES.NODE_NAME%TYPE,
2429
  		   	   	     nNodeTypeId IN NETWORK_NODES.NODE_TYPE_ID%TYPE,
2430
					 sNodeComments IN NETWORK_NODES.NODE_COMMENTS%TYPE,
2431
					 nBomId IN BOM_CONTENTS.BOM_ID%TYPE,
2432
					 nUserId IN NUMBER,
2433
					 sNotXML IN NETWORK_NODES.NOT_XML%TYPE );
2434
 
2435
PROCEDURE Update_Node ( nNodeId IN NETWORK_NODES.NODE_ID%TYPE,
2436
						sNodeName IN NETWORK_NODES.NODE_NAME%TYPE,
2437
  		   	   	     	nNodeTypeId IN NETWORK_NODES.NODE_TYPE_ID%TYPE,
2438
					 	sNodeComments IN NETWORK_NODES.NODE_COMMENTS%TYPE,
2439
						nUserId IN NUMBER,
2440
						nLifeCycle IN NUMBER,
2441
						sNotXML IN NETWORK_NODES.NOT_XML%TYPE );					 
2442
 
2443
PROCEDURE Remove_Node ( sNodeIdList IN VARCHAR2,
2444
					  	nBomId IN BOM_CONTENTS.BOM_ID%TYPE );	
2445
 
2446
PROCEDURE Destroy_Node ( nNodeIdCollection IN DEPMGR_NUMBER_TAB_t, nUserId IN NUMBER );	
2447
 
2448
PROCEDURE Destroy_Node ( nNodeIdList IN VARCHAR2, nUserId IN NUMBER );			
2449
 
2450
PROCEDURE Sort_Nodes ( sNodeIdOrder IN VARCHAR2,
2451
		  			   nBomId IN BOMS.BOM_ID%TYPE,
2452
					   nUserId IN NUMBER );						 
2453
 
2454
END pk_Network_Node;
2455
 
2456
/
2457
--------------------------------------------------------
2458
--  DDL for Package PK_OPERATING_SYSTEM
2459
--------------------------------------------------------
2460
 
5924 dpurdie 2461
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_OPERATING_SYSTEM" 
3926 dpurdie 2462
IS
2463
   PROCEDURE add_os (
2464
      sosname         IN   operating_systems.os_name%TYPE,
2465
      soscomments     IN   operating_systems.os_comments%TYPE,
2466
      snodespecfile   IN   operating_systems.node_spec_file%TYPE,
2467
      snotxml         IN   operating_systems.not_xml%TYPE,
2468
      nnodeid         IN   operating_systems.node_id%TYPE,
2469
      nbaseenvname    IN   base_env.base_env_name%TYPE,
2470
      nbosid          IN   base_env.bos_id%TYPE DEFAULT NULL,
2471
      nuserid         IN   NUMBER
2472
   );
2473
 
2474
   PROCEDURE update_os (
2475
      nosid           IN   operating_systems.os_id%TYPE,
2476
      sosname         IN   operating_systems.os_name%TYPE,
2477
      soscomments     IN   operating_systems.os_comments%TYPE,
2478
      nbaseenvname    IN   base_env.base_env_name%TYPE,
2479
      snodespecfile   IN   operating_systems.node_spec_file%TYPE,
2480
      snotxml         IN   operating_systems.not_xml%TYPE,
2481
      nuserid         IN   NUMBER
2482
   );
2483
 
2484
   PROCEDURE add_product_wrap (
2485
      npkgid         IN   NUMBER,
2486
      sprodversion   IN   VARCHAR2,
2487
      nosid          IN   os_contents.os_id%TYPE,
2488
      nuserid        IN   NUMBER,
2489
      scomments      IN   VARCHAR2 DEFAULT NULL
2490
   );
2491
 
2492
   PROCEDURE set_base_conf (
2493
      nosid        IN   os_base_env.os_id%TYPE,
2494
      nbaseenvid   IN   os_base_env.base_env_id%TYPE
2495
   );
2496
 
2497
   PROCEDURE shift_product_seqnum (
2498
      nprodid     IN   os_contents.prod_id%TYPE,
2499
      nosid       IN   os_contents.os_id%TYPE,
2500
      ntoseqnum   IN   os_contents.seq_num%TYPE
2501
   );
2502
 
2503
   PROCEDURE shift_bulk_products_seqnum (
2504
      sprodidlist   IN   VARCHAR2,
2505
      nosid         IN   os_contents.os_id%TYPE,
2506
      cdirection    IN   CHAR
2507
   );
2508
 
2509
   PROCEDURE destroy_os (
2510
      nosidcollection   IN   depmgr_number_tab_t,
2511
      nuserid           IN   NUMBER
2512
   );
2513
 
2514
   PROCEDURE destroy_os (nosidlist IN VARCHAR2, nuserid IN NUMBER);
2515
 
2516
   PROCEDURE add_package_process (
2517
      nprocidlist   IN   VARCHAR2,
2518
	  npvid 		IN 	 processes_config.prod_id%TYPE,
2519
      nosid         IN   os_contents.os_id%TYPE,
2520
      nuserid       IN   NUMBER
2521
   );
2522
 
2523
   PROCEDURE add_packages_process (
2524
	  npvidlist		IN 	 VARCHAR2,
2525
      nosid         IN   os_contents.os_id%TYPE,
2526
      nuserid       IN   NUMBER
2527
   );   
2528
END pk_operating_system;
2529
 
2530
/
2531
--------------------------------------------------------
2532
--  DDL for Package PK_PRODUCT
2533
--------------------------------------------------------
2534
 
5924 dpurdie 2535
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_PRODUCT" IS
3926 dpurdie 2536
/* ---------------------------------------------------------------------------
2537
    Version: 1.0.0
2538
   --------------------------------------------------------------------------- */
2539
 
2540
PROCEDURE New_Product ( sProdName IN PACKAGES.PKG_NAME%TYPE,
2541
						sProdVersion IN PACKAGE_VERSIONS.PKG_VERSION%TYPE,
2542
						nUserId IN NUMBER,
2543
						outProdId OUT PACKAGE_VERSIONS.PV_ID%TYPE );
2544
 
2545
PROCEDURE Add_Product ( sProdIdList IN VARCHAR2,
2546
		  			  	nOsId IN OS_CONTENTS.OS_ID%TYPE,
2547
						nUserId IN NUMBER );
2548
 
2549
PROCEDURE Hide_Product ( sProdIdList IN VARCHAR2,
2550
		  			  	nOsId IN OS_CONTENTS.OS_ID%TYPE,
2551
						nUserId IN NUMBER );	
2552
 
2553
PROCEDURE Unhide_Product ( sProdIdList IN NUMBER,
2554
		  			  	nOsId IN OS_CONTENTS.OS_ID%TYPE,
2555
						nUserId IN NUMBER );												
2556
 
2557
PROCEDURE Update_Process (nProcId IN PROCESSES_CONFIG.PROC_ID%TYPE,
2558
		  				  nProdId IN PROCESSES_CONFIG.PROD_ID%TYPE,
2559
		  				  nIsInterface IN PROCESSES_CONFIG.IS_INTERFACE%TYPE,		  
2560
		  				  nOsId IN PROCESSES_CONFIG.OS_ID%TYPE,		  
2561
						  nCmdInterface IN PROCESSES_CONFIG.CMD_INTERFACE%TYPE,
2562
						  nPkgOwner IN PROCESSES_CONFIG.PKG_OWNER%TYPE,
2563
						  sPkgHealthTag IN PROCESSES_CONFIG.PKG_HEALTH_TAG%TYPE,
2564
						  nProduct IN PROCESSES_CONFIG.PROD_ID%TYPE );						
2565
 
2566
PROCEDURE Update_Product ( nOldProdId IN OS_CONTENTS.PROD_ID%TYPE,
2567
						   sNewProdIdVersion IN VARCHAR2,
2568
						   nOsId IN OS_CONTENTS.OS_ID%TYPE,
2569
						   nSeqNum IN OS_CONTENTS.SEQ_NUM%TYPE,
2570
						   sComments IN OS_CONTENTS.PRODUCT_COMMENTS%TYPE,
2571
						   sSunOSElectronicName IN PACKAGES.SUNOS_ELECTRONIC_NAME%TYPE,
2572
						   sWinElectronicName IN PACKAGES.WIN_ELECTRONIC_NAME%TYPE,
2573
						   sIsNodeSpec IN OS_CONTENTS.IS_NODE_SPEC%TYPE,
2574
						   sNotXML IN OS_CONTENTS.NOT_XML%TYPE,
2575
						   sPatchElectronicName IN PACKAGE_VERSIONS.PATCH_ELECTRONIC_NAME%TYPE,
2576
   						   nUserId IN NUMBER,
2577
						   outProdId OUT PACKAGE_VERSIONS.PV_ID%TYPE );						 
2578
 
2579
PROCEDURE Replace_Product ( nOldProdId IN OS_CONTENTS.PROD_ID%TYPE,
2580
		  				  	nNewProdId IN OS_CONTENTS.PROD_ID%TYPE,
2581
		  			  	    nOsId IN OS_CONTENTS.OS_ID%TYPE,
2582
							nUserId IN NUMBER );
2583
 
2584
PROCEDURE Remove_Process ( 	sProcName IN PROCESSES_CONFIG.PKG_HEALTH_TAG%TYPE,		
2585
		  				   	sProdIdList IN VARCHAR2,
2586
		  			  	  	nOsId IN OS_CONTENTS.OS_ID%TYPE,
2587
							sCmdInterface IN PROCESSES_CONFIG.CMD_INTERFACE%TYPE,
2588
							sPkgOwner IN PROCESSES_CONFIG.PKG_OWNER%TYPE,
2589
							sInterface IN PROCESSES_CONFIG.IS_INTERFACE%TYPE,
2590
							nUserId IN NUMBER );							
2591
 
2592
PROCEDURE Remove_Products ( sProdIdList IN VARCHAR2,
2593
		  			  	  	nOsId IN OS_CONTENTS.OS_ID%TYPE,
2594
							nUserId IN NUMBER ); 
2595
 
2596
PROCEDURE Add_Products_NodeSpec ( sProdIdList IN VARCHAR2,
2597
		  			  	  		  nOsId IN OS_CONTENTS.OS_ID%TYPE,
2598
								  nUserId IN NUMBER ); 														
2599
 
2600
PROCEDURE Accept_Reject ( nProdId IN PRODUCT_DETAILS.PROD_ID%TYPE,
2601
						  nBomId IN BOMS.BOM_ID%TYPE,
2602
						  sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL,
2603
						  nUserId IN REJECTION_TRAIL.USER_ID%TYPE,
2604
						  nOsId IN NUMBER );
2605
 
2606
PROCEDURE Accept_Reject_List ( nProdIdList IN VARCHAR2,
2607
							   nBomId IN BOMS.BOM_ID%TYPE,
2608
						  	   sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL,
2609
						       nUserId IN REJECTION_TRAIL.USER_ID%TYPE,
2610
							   nOsId IN NUMBER );
2611
 
2612
PROCEDURE Accept_Reject_Comments ( nProdId IN PRODUCT_DETAILS.PROD_ID%TYPE,
2613
		  						   nRejectSeq IN REJECTION_TRAIL.REJECT_SEQ%TYPE,
2614
						  	   	   sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL,
2615
						       	   nUserId IN REJECTION_TRAIL.USER_ID%TYPE );				
2616
 
2617
PROCEDURE Sort_Products ( sProdIdOrder IN VARCHAR2,
2618
		  			  	  nOsId IN OS_CONTENTS.OS_ID%TYPE,
2619
						  nUserId IN NUMBER );	
2620
 
2621
PROCEDURE Remove_Obsolete_Patches ( nOsId IN OS_CONTENTS.OS_ID%TYPE,
2622
		  						  	nUserId IN NUMBER );
2623
 
2624
 
2625
FUNCTION GET_OS_ID ( PvId IN NUMBER ) RETURN NUMBER;	
2626
 
2627
FUNCTION GET_NODE_ID ( OsId IN NUMBER ) RETURN NUMBER;
2628
 
2629
PROCEDURE Add_Product_Note ( nProdId IN NUMBER,
2630
		  				   	 sNotes IN VARCHAR2,
2631
							 nUserId IN NUMBER );
2632
 
2633
PROCEDURE Edit_Product_Note ( nProdId IN NUMBER,
2634
		  				   	 sNotes IN VARCHAR2,
2635
							 nUserId IN NUMBER );							 
2636
 
2637
PROCEDURE Log_Product_Trail ( nProdId IN PRODUCT_TRAIL.PROD_ID%TYPE,
2638
						  	  sAction IN PRODUCT_TRAIL.TRAIL_ACTION%TYPE,
2639
						  	  nUserId IN PRODUCT_TRAIL.USER_ID%TYPE  );								 
2640
 
2641
END pk_Product;
2642
 
2643
/
2644
--------------------------------------------------------
2645
--  DDL for Package PK_PRODUCTION
2646
--------------------------------------------------------
2647
 
5924 dpurdie 2648
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_PRODUCTION" AS
3926 dpurdie 2649
/******************************************************************************
2650
   NAME:       PK_PRODUCTION
2651
   PURPOSE:
2652
 
2653
   REVISIONS:
2654
   Ver        Date        Author           Description
2655
   ---------  ----------  ---------------  ------------------------------------
2656
   1.0        26/07/2006             1. Created this package.
2657
******************************************************************************/
2658
 
2659
  PROCEDURE Release_Authorisation_Tester ( nPvId IN NUMBER,
2660
  										   nBomId IN NUMBER,
2661
										   nTesterId IN NUMBER,
2662
										   sTesterComments IN VARCHAR2);
2663
 
2664
  PROCEDURE Release_Authorisation_Manager ( nPvId IN NUMBER,
2665
  										   	nBomId IN NUMBER,
2666
										   	nManagerId IN NUMBER,
2667
										   	sManagerComments IN VARCHAR2);		
2668
 
2669
  PROCEDURE Log_Pkg_Trail ( nPkgId IN OS_TRAIL.OS_ID%TYPE,
2670
						  	sAction IN OS_TRAIL.TRAIL_ACTION%TYPE,
2671
						  	nUserId IN OS_TRAIL.USER_ID%TYPE  );
2672
 
2673
  PROCEDURE Reject_Product ( nPvId IN NUMBER,
2674
							 nTesterId IN NUMBER,
2675
							 sTesterComments IN VARCHAR2  );	
2676
 
2677
  PROCEDURE Add_Production_Bom ( nBomId IN NUMBER, 
2678
  							   	 nBranchId IN NUMBER, 
2679
								 nStateId IN NUMBER, 
2680
								 nProjId IN NUMBER ); 							 																									   
2681
 
2682
END PK_PRODUCTION;
2683
 
2684
/
2685
--------------------------------------------------------
2686
--  DDL for Package PK_PROJECT
2687
--------------------------------------------------------
2688
 
5924 dpurdie 2689
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_PROJECT" IS
3926 dpurdie 2690
 
2691
 
2692
PROCEDURE Add_Project ( sProjName IN DM_PROJECTS.PROJ_NAME%TYPE,
2693
		  			  	nRMProjFk IN DM_PROJECTS.RM_PROJECTS_FK%TYPE );
2694
 
2695
PROCEDURE Update_Project ( nProjId IN DM_PROJECTS.PROJ_ID%TYPE,
2696
		  				   sProjName IN DM_PROJECTS.PROJ_NAME%TYPE,
2697
						   nRMProjFk IN DM_PROJECTS.RM_PROJECTS_FK%TYPE );		
2698
 
2699
PROCEDURE ShowHide_Project ( nProjId DM_PROJECTS.PROJ_ID%TYPE );						   				
2700
 
2701
PROCEDURE Remove_Project ( nProjId IN DM_PROJECTS.PROJ_ID%TYPE );						
2702
 
2703
PROCEDURE Add_Branch ( sBranchName IN BRANCHES.BRANCH_NAME%TYPE,
2704
		  			   nProjId IN BRANCHES.PROJ_ID%TYPE,
2705
					   nRMVTreeId IN BRANCHES.RM_VTREE_FK%TYPE,
2706
                       sBranchComments IN BRANCHES.BRANCH_COMMENTS%TYPE );
2707
 
2708
PROCEDURE Update_Branch ( nBranchId IN BRANCHES.BRANCH_ID%TYPE,
2709
		  				  sBranchName IN BRANCHES.BRANCH_NAME%TYPE,
2710
					   	  nRMVTreeId IN BRANCHES.RM_VTREE_FK%TYPE,
2711
                          sBranchComments IN BRANCHES.BRANCH_COMMENTS%TYPE );					   
2712
 
2713
PROCEDURE Remove_Branch ( nBranchId IN BRANCHES.BRANCH_ID%TYPE );	
2714
 
2715
PROCEDURE ShowHide_Branch ( nBranchId IN BRANCHES.BRANCH_ID%TYPE );
2716
 
2717
PROCEDURE ShowHide_Download ( nProjId DM_PROJECTS.PROJ_ID%TYPE );	
2718
 
2719
PROCEDURE ShowHide_StateDownload ( nStateId STATES.STATE_ID%TYPE );	
2720
 
2721
 
2722
 
2723
 
2724
END pk_Project;
2725
 
2726
/
2727
--------------------------------------------------------
2728
--  DDL for Package PK_REPORT
2729
--------------------------------------------------------
2730
 
5924 dpurdie 2731
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_REPORT" IS
3926 dpurdie 2732
 
2733
/*
2734
------------------------------
2735
||  Last Modified:  S.Vukovic
2736
||  Modified Date:  8/Mar/2005
2737
||  Spec Version:   1.0
2738
------------------------------
2739
*/
2740
 
2741
	TYPE typeCur IS REF CURSOR;
2742
 
2743
    /*================================================================================================*/
2744
 
2745
	FUNCTION BOM_PRODUCTS_BY_NODE_BY_OS ( BomId NUMBER ) RETURN typeCur;
2746
 
2747
	/*================================================================================================*/
2748
 
2749
 
2750
END PK_REPORT;
2751
 
2752
/
2753
--------------------------------------------------------
2754
--  DDL for Package PK_REQUIREMENTS
2755
--------------------------------------------------------
2756
 
5924 dpurdie 2757
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_REQUIREMENTS" IS
3926 dpurdie 2758
 
2759
PROCEDURE Add_Bom ( nFromBomId IN BOMS.BOM_ID%TYPE,
2760
					nToBranchId IN BOMS.BRANCH_ID%TYPE );	
2761
 
2762
PROCEDURE Destroy_Bom ( nBomId IN VARCHAR2 );					
2763
 
2764
END pk_Requirements;
2765
 
2766
/
2767
--------------------------------------------------------
2768
--  DDL for Package PK_STATE
2769
--------------------------------------------------------
2770
 
5924 dpurdie 2771
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_STATE" IS
3926 dpurdie 2772
 
2773
 
2774
PROCEDURE Add_State ( sStateName IN STATES.STATE_NAME%TYPE,
2775
		  			  nStateTypeEnum IN STATES.STATE_TYPE_ENUM%TYPE,
2776
		  			  nProjId IN STATES.PROJ_ID%TYPE );
2777
 
2778
PROCEDURE Update_State ( nStateId IN STATES.STATE_ID%TYPE,
2779
		  			   	 sStateName IN STATES.STATE_NAME%TYPE,
2780
						 nStateSeq IN STATES.STATE_SEQ%TYPE,
2781
						 nStateTypeEnum IN STATES.STATE_TYPE_ENUM%TYPE );
2782
 
2783
PROCEDURE Remove_State ( nStateId IN STATES.STATE_ID%TYPE );	
2784
 
2785
PROCEDURE Toggle_Is_Displayed ( nStateId IN BOM_STATE.STATE_ID%TYPE,
2786
								nBomId IN BOM_STATE.BOM_ID%TYPE,
2787
								cIsDisplay IN BOM_STATE.IS_DISPLAYED%TYPE );
2788
 
2789
PROCEDURE Auto_Hide ( nStateId IN BOM_STATE.STATE_ID%TYPE,
2790
					  nInsertedBomId IN BOM_STATE.BOM_ID%TYPE,
2791
					  nEventValue IN SYSTEM_CONFIGURATION.ITEM_VALUE%TYPE );								
2792
 
2793
END pk_State;
2794
 
2795
/
2796
--------------------------------------------------------
2797
--  DDL for Package PK_UTILS
2798
--------------------------------------------------------
2799
 
5924 dpurdie 2800
  CREATE OR REPLACE PACKAGE "DEPLOYMENT_MANAGER"."PK_UTILS" IS
3926 dpurdie 2801
/* ---------------------------------------------------------------------------
2802
    Version: 1.0.0
2803
   --------------------------------------------------------------------------- */
2804
 
2805
PROCEDURE Clone_BOM ( nFromBomId IN BOMS.BOM_ID%TYPE,
2806
		  			  nToBomId IN BOMS.BOM_ID%TYPE,
2807
					  nUserId IN NUMBER );
2808
 
2809
PROCEDURE Copy_BOM_Contents ( nFromBomId IN BOMS.BOM_ID%TYPE,
2810
		  					  nToBomId IN BOMS.BOM_ID%TYPE );	
2811
 
2812
PROCEDURE Copy_Network_Node ( nFromBomId IN BOMS.BOM_ID%TYPE,
2813
		  					  nToBomId IN BOMS.BOM_ID%TYPE,
2814
							  nFromNodeId IN NUMBER DEFAULT 0  );	
2815
 
2816
PROCEDURE Paste_OS_Contents;							  
2817
 
2818
PROCEDURE Paste_Node ( sNodeIdList IN VARCHAR2,
2819
					   nFromBomId IN OPERATING_SYSTEMS.NODE_ID%TYPE,
2820
					   nToBomId IN OPERATING_SYSTEMS.NODE_ID%TYPE );
2821
 
2822
PROCEDURE Paste_Os ( sOsIdList IN VARCHAR2,
2823
					 nFromNodeId IN OPERATING_SYSTEMS.NODE_ID%TYPE,
2824
					 nToNodeId IN OPERATING_SYSTEMS.NODE_ID%TYPE );
2825
 
2826
PROCEDURE Paste_Products ( sProdIdList IN VARCHAR2,
2827
						   nFromOsId IN OS_CONTENTS.OS_ID%TYPE, 
2828
						   nToOsId IN OS_CONTENTS.OS_ID%TYPE );
2829
 
2830
PROCEDURE Paste_Products_To_Base_Env ( sProdIdList IN VARCHAR2,
2831
									   nFromOsId IN OS_CONTENTS.OS_ID%TYPE, 
2832
									   nToBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE );						   
2833
 
2834
PROCEDURE Clean_Old_Id_Column;	
2835
 
2836
PROCEDURE Log_Rejection_Trail ( nEnumEntityType IN REJECTION_TRAIL.ENUM_ENTITY_TYPE%TYPE,
2837
								nEntityId IN REJECTION_TRAIL.ENTITY_ID%TYPE,
2838
								cIsRejected IN REJECTION_TRAIL.IS_REJECTED%TYPE,
2839
								nUserId IN REJECTION_TRAIL.USER_ID%TYPE,
2840
								sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL );
2841
 
2842
PROCEDURE Log_Action ( nUserId IN ACTION_TRAIL.USER_ID%TYPE, 
2843
					   nEvent IN ACTION_TRAIL.ACTION_EVENT%TYPE,
2844
					   sMethod IN ACTION_TRAIL.METHOD_CALL%TYPE DEFAULT NULL,
2845
					   sActionScript IN ACTION_TRAIL.ACTION_SCRIPT%TYPE DEFAULT NULL,
2846
					   sDescription IN ACTION_TRAIL.ACTION_DESCRIPTION%TYPE DEFAULT NULL  );					  						  				  				 
2847
 
2848
END pk_Utils;
2849
 
2850
/
2851
--------------------------------------------------------
2852
--  DDL for Package Body PK_BASE_ENV
2853
--------------------------------------------------------
2854
 
5924 dpurdie 2855
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_BASE_ENV" 
3926 dpurdie 2856
IS
2857
/* ---------------------------------------------------------------------------
2858
    Version: 1.0.0
2859
   --------------------------------------------------------------------------- */
2860
 
2861
 
2862
/*--------------------------------------------------------------------------------------------------*/
2863
PROCEDURE Add_Base_Env ( sBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
2864
						 nBosId IN BASE_ENV.BOS_ID%TYPE,
2865
						 nBomId IN BASE_ENV.BOM_ID%TYPE,
2866
						 nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2867
						 nUserId IN NUMBER ) IS
2868
 
2869
nBaseEnvId BASE_ENV.BASE_ENV_ID%TYPE;	
2870
NodeName VARCHAR2(4000);					 
2871
 
2872
BEGIN
2873
	/*--------------- Business Rules Here -------------------*/
2874
	/*-------------------------------------------------------*/
2875
 
2876
	SELECT NN.NODE_NAME INTO NodeName
2877
	FROM NETWORK_NODES NN, OPERATING_SYSTEMS OS
2878
	WHERE NN.NODE_ID = OS.NODE_ID
2879
	AND OS.OS_ID = nOsId;
2880
 
2881
	-- Get base_env_id
2882
	SELECT SEQ_BASE_ENV_ID.NEXTVAL INTO nBaseEnvId FROM DUAL;
2883
 
2884
	-- Insert new base env name
2885
	INSERT INTO BASE_ENV ( BASE_ENV_ID, BOS_ID, BASE_ENV_NAME, BOM_ID )
2886
	VALUES ( nBaseEnvId, nBosId, sBaseEnvName, nBomId );
2887
 
2888
	/* Log BOM_TRAIL */
2889
	pk_Bom.Log_Os_Trail ( nOsId, 'Added Base Configuration: '||sBaseEnvName||' into Node: '||NodeName, nUserId );	
2890
 
2891
	EXCEPTION
2892
    WHEN DUP_VAL_ON_INDEX
2893
	THEN		
2894
		RAISE_APPLICATION_ERROR (-20000, 'Base Configuration Name "'|| sBaseEnvName ||'" is Already Used in this BOM.');
2895
 
2896
END	Add_Base_Env;
2897
/*--------------------------------------------------------------------------------------------------*/
2898
PROCEDURE Update_Base_Env ( nBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE,
2899
							sBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
2900
						 	nBosId IN BASE_ENV.BOS_ID%TYPE,
2901
							nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2902
							nUserId IN NUMBER ) IS
2903
 
2904
NodeName VARCHAR2(4000);							
2905
 
2906
BEGIN
2907
	/*--------------- Business Rules Here -------------------*/
2908
	IF (nBaseEnvId IS NULL) 
2909
	THEN
2910
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBaseEnvId= '|| nBaseEnvId  );
2911
 
2912
	END IF;
2913
	/*-------------------------------------------------------*/
2914
 
2915
	SELECT NN.NODE_NAME INTO NodeName
2916
	FROM NETWORK_NODES NN, OPERATING_SYSTEMS OS
2917
	WHERE NN.NODE_ID = OS.NODE_ID
2918
	AND OS.OS_ID = nOsId;
2919
 
2920
	-- Update Base Env
2921
	UPDATE BASE_ENV SET
2922
		BASE_ENV_NAME = sBaseEnvName,
2923
		BOS_ID = nBosId
2924
	WHERE BASE_ENV_ID = nBaseEnvId;
2925
 
2926
	/* Log BOM_TRAIL */
2927
	pk_Bom.Log_Os_Trail ( nOsId, 'Updated Base Configuration: '||sBaseEnvName||' on Node: '||NodeName, nUserId );	
2928
 
2929
	EXCEPTION
2930
    WHEN DUP_VAL_ON_INDEX
2931
	THEN		
2932
		RAISE_APPLICATION_ERROR (-20000, 'Base Configuration Name "'|| sBaseEnvName ||'" is Already Used in this BOM.');
2933
 
2934
END	Update_Base_Env;
2935
/*--------------------------------------------------------------------------------------------------*/
2936
FUNCTION Get_Base_Env_Id ( sBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
2937
						   nBomId IN BASE_ENV.BOM_ID%TYPE ) RETURN BASE_ENV.BASE_ENV_ID%TYPE IS
2938
 
2939
ReturnValue BASE_ENV.BASE_ENV_ID%TYPE;	
2940
 
2941
CURSOR curBaseEnv IS
2942
	SELECT be.BASE_ENV_ID
2943
	  FROM BASE_ENV be
2944
	 WHERE be.BASE_ENV_NAME = sBaseEnvName
2945
	   AND be.BOM_ID = nBomId;
2946
recBaseEnv curBaseEnv%ROWTYPE;
2947
 
2948
BEGIN
2949
	/*--------------- Business Rules Here -------------------*/
2950
	/*-------------------------------------------------------*/
2951
 
2952
	-- Get bom_name_id
2953
	OPEN curBaseEnv;
2954
	FETCH curBaseEnv INTO recBaseEnv;
2955
 
2956
	IF curBaseEnv%FOUND THEN
2957
		ReturnValue := recBaseEnv.BASE_ENV_ID;
2958
	ELSE
2959
		ReturnValue := NULL;
2960
	END IF;
2961
 
2962
	CLOSE curBaseEnv;
2963
 
2964
	RETURN ReturnValue;
2965
END	Get_Base_Env_Id;
2966
/*--------------------------------------------------------------------------------------------------*/
2967
PROCEDURE Destroy_Base_Env ( nBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE, 
2968
		  				   	 nOsId IN OS_BASE_ENV.OS_ID%TYPE,
2969
						 	 nUserId IN NUMBER ) IS
2970
 
2971
BaseEnvName VARCHAR2(100);		
2972
NodeName VARCHAR2(4000);					 
2973
 
2974
BEGIN
2975
	/*--------------- Business Rules Here -------------------*/
2976
	IF (nBaseEnvId IS NULL) 
2977
	THEN
2978
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBaseEnvId= '|| nBaseEnvId  );
2979
 
2980
	END IF;
2981
	/*-------------------------------------------------------*/
2982
 
2983
	SELECT NN.NODE_NAME INTO NodeName
2984
	FROM NETWORK_NODES NN, OPERATING_SYSTEMS OS
2985
	WHERE NN.NODE_ID = OS.NODE_ID
2986
	AND OS.OS_ID = nOsId;	
2987
 
2988
	SELECT BASE_ENV_NAME INTO BaseEnvName
2989
	FROM BASE_ENV
2990
	WHERE BASE_ENV_ID = nBaseEnvId;
2991
 
2992
	-- Destroy Base Env Contents
2993
	DELETE
2994
      FROM BASE_ENV_CONTENTS
2995
     WHERE BASE_ENV_ID = nBaseEnvId;
2996
 
2997
	-- Remove Base Env From BOM
2998
	DELETE 
2999
	  FROM OS_BASE_ENV obe
3000
	 WHERE obe.BASE_ENV_ID = nBaseEnvId;
3001
 
3002
	-- Destroy Base Env
3003
	DELETE 
3004
	  FROM BASE_ENV be
3005
	 WHERE be.BASE_ENV_ID = nBaseEnvId;		
3006
 
3007
	/* Log BOM_TRAIL */
3008
	pk_Bom.Log_Os_Trail ( nOsId, 'Destroyed Base Configuration: '||BaseEnvName||' on Node: '||NodeName, nUserId );		 		 
3009
 
3010
END	Destroy_Base_Env;
3011
/*--------------------------------------------------------------------------------------------------*/
3012
PROCEDURE Add_Product ( sProdIdList IN VARCHAR2,
3013
		  			  	nBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE,
3014
						nOsId IN OS_BASE_ENV.OS_ID%TYPE,
3015
						nUserId IN NUMBER ) IS
3016
 
3017
NextSeqNum NUMBER;
3018
BaseEnvName VARCHAR2(100);
3019
PkgName VARCHAR2(100);
3020
PkgVersion VARCHAR2(100);
3021
NodeName VARCHAR2(4000); 
3022
 
3023
CURSOR prod_cur IS
3024
	SELECT pv.pv_id AS PROD_ID,
3025
		   pv.PV_DESCRIPTION
3026
	  FROM PACKAGE_VERSIONS pv
3027
	 WHERE pv.pv_id IN (
3028
	 	   			   	SELECT * 
3029
						  FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
3030
						);
3031
prod_rec prod_cur%ROWTYPE;
3032
 
3033
 
3034
BEGIN
3035
	/*--------------- Business Rules Here -------------------*/
3036
	/*-------------------------------------------------------*/
3037
 
3038
	SELECT BASE_ENV_NAME INTO BaseEnvName 
3039
	FROM BASE_ENV
3040
	WHERE BASE_ENV_ID = nBaseEnvId;
3041
 
3042
	SELECT NN.NODE_NAME INTO NodeName
3043
	FROM NETWORK_NODES NN, OPERATING_SYSTEMS OS
3044
	WHERE NN.NODE_ID = OS.NODE_ID
3045
	AND OS.OS_ID = nOsId;
3046
 
3047
 
3048
	-- Get seq_num
3049
	SELECT MAX( bec.SEQ_NUM ) INTO NextSeqNum
3050
	  FROM BASE_ENV_CONTENTS bec
3051
	 WHERE bec.BASE_ENV_ID = nBaseEnvId;
3052
 
3053
	-- Set NextSeqNum to 0 if no existing products are found
3054
	IF NextSeqNum IS NULL THEN
3055
	   NextSeqNum := 1;
3056
	ELSE
3057
	   NextSeqNum := NextSeqNum + 1;
3058
	END IF;
3059
 
3060
 
3061
	-- Insert into OS Contents
3062
	OPEN prod_cur;
3063
	FETCH prod_cur INTO prod_rec;
3064
 
3065
	WHILE prod_cur%FOUND
3066
	LOOP
3067
 
3068
		INSERT INTO BASE_ENV_CONTENTS ( BASE_ENV_ID, SEQ_NUM, PROD_ID, BASE_ENV_COMMENTS )
3069
		VALUES (
3070
				nBaseEnvId, 
3071
				NextSeqNum, 
3072
				prod_rec.PROD_ID,
3073
				prod_rec.PV_DESCRIPTION
3074
				);
3075
 
3076
		SELECT PKG.PKG_NAME INTO PkgName
3077
		FROM PACKAGES PKG, PACKAGE_VERSIONS PV
3078
		WHERE PV.PV_ID = prod_rec.PROD_ID
3079
		AND PKG.PKG_ID = PV.PKG_ID;
3080
 
3081
		SELECT PKG_VERSION INTO PkgVersion
3082
		FROM PACKAGE_VERSIONS PV
3083
		WHERE PV.PV_ID = prod_rec.PROD_ID;				
3084
 
3085
		-- Log Action --
3086
		pk_Bom.Log_Os_Trail ( nOsId,  
3087
							  'Added Product: '||PkgName||' (Version '||PkgVersion||') to Base Configuration: '||BaseEnvName||' with Install Order: '||NextSeqNum||' on Node: '||NodeName,
3088
							  nUserId );
3089
 
3090
 
3091
		NextSeqNum := NextSeqNum + 1;
3092
		FETCH prod_cur INTO prod_rec;
3093
	END LOOP;
3094
 
3095
 
3096
	CLOSE prod_cur;
3097
 
3098
 
3099
END	Add_Product; 
3100
/*--------------------------------------------------------------------------------------------------*/
3101
PROCEDURE Remove_Products ( sProdIdList IN VARCHAR2,
3102
		  			  	  	nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
3103
							nUserId IN NUMBER ) IS
3104
 
3105
PkgName VARCHAR2(100);
3106
PkgVersion VARCHAR2(100);		
3107
NextSeqNum NUMBER := 1;
3108
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
3109
 
3110
CURSOR prod_cur IS
3111
	SELECT bec.PROD_ID, bec.SEQ_NUM
3112
	  FROM BASE_ENV_CONTENTS bec
3113
	 WHERE bec.BASE_ENV_ID = nBaseEnvId
3114
	 ORDER BY bec.SEQ_NUM;
3115
prod_rec prod_cur%ROWTYPE;	
3116
 
3117
 
3118
BEGIN
3119
	/*--------------- Business Rules Here -------------------*/
3120
	IF sProdIdList IS NULL
3121
	THEN
3122
		RAISE_APPLICATION_ERROR (-20000, 'Please select one or more Products.');
3123
 
3124
	END IF;
3125
	/*-------------------------------------------------------*/
3126
 
3127
 
3128
 
3129
	-- Remove Products
3130
	DELETE 
3131
	FROM BASE_ENV_CONTENTS
3132
	WHERE BASE_ENV_ID = nBaseEnvId
3133
	  AND PROD_ID IN ( 
3134
	  	  		  	    SELECT * 
3135
						  FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
3136
					 );
3137
 
3138
 
3139
	-- Update Seq Numbers
3140
	OPEN prod_cur;
3141
	FETCH prod_cur INTO prod_rec;
3142
 
3143
	WHILE prod_cur%FOUND
3144
	LOOP
3145
 
3146
		UPDATE BASE_ENV_CONTENTS SET
3147
		SEQ_NUM = NextSeqNum
3148
		WHERE BASE_ENV_ID = nBaseEnvId
3149
		  AND PROD_ID = prod_rec.PROD_ID;
3150
 
3151
		NextSeqNum := NextSeqNum + 1;
3152
		FETCH prod_cur INTO prod_rec;
3153
	END LOOP;
3154
 
3155
	CLOSE prod_cur;
3156
 
3157
	nIdCollector := IN_LIST_NUMBER ( sProdIdList );
3158
 
3159
	FOR i IN 1..nIdCollector.COUNT
3160
	LOOP
3161
		SELECT PKG.PKG_NAME INTO PkgName
3162
		FROM PACKAGES PKG, PACKAGE_VERSIONS PV
3163
		WHERE PV.PV_ID = nIdCollector(i)
3164
		AND PKG.PKG_ID = PV.PKG_ID;
3165
 
3166
		SELECT PKG_VERSION INTO PkgVersion
3167
		FROM PACKAGE_VERSIONS PV
3168
		WHERE PV.PV_ID = nIdCollector(i);	
3169
 
3170
		-- Log Action --
3171
		pk_Bom.Log_Os_Trail ( nBaseEnvId,  
3172
							  'Deleted Product: '||PkgName||' (Version: '||PkgVersion||') From Base Configuration from Node',
3173
							  nUserId );					  
3174
	END LOOP;	
3175
 
3176
 
3177
 
3178
END Remove_Products; 
3179
/*--------------------------------------------------------------------------------------------------*/
3180
PROCEDURE Add_Product_Wrap ( nPkgId IN NUMBER,
3181
		  				   	 sProdVersion IN VARCHAR2,
3182
							 nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
3183
							 nOsId IN OS_BASE_ENV.OS_ID%TYPE,
3184
							 nUserId IN NUMBER,
3185
							 sComments IN VARCHAR2 ) IS
3186
 
3187
ProdId PACKAGE_VERSIONS.PV_ID%TYPE;
3188
ProdName PACKAGES.PKG_NAME%TYPE;
3189
 
3190
CURSOR prod_cur IS
3191
	SELECT bec.PROD_ID
3192
	  FROM BASE_ENV_CONTENTS bec
3193
	 WHERE bec.PROD_ID = ProdId
3194
	   AND bec.BASE_ENV_ID = nBaseEnvId;
3195
prod_rec prod_cur%ROWTYPE;
3196
 
3197
BEGIN
3198
	/*--------------- Business Rules Here -------------------*/                             
3199
	IF (NOT nPkgId IS NULL) AND (sProdVersion IS NULL) AND (NOT nBaseEnvId IS NULL) AND (NOT nUserId IS NULL) THEN
3200
	   RAISE_APPLICATION_ERROR (-20000, 'Please provide Product Version.('|| sProdVersion ||')' );
3201
 
3202
	ELSIF (nPkgId IS NULL) OR (sProdVersion IS NULL) OR (nBaseEnvId IS NULL) OR (nUserId IS NULL) THEN
3203
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nPkgId= '|| nPkgId ||', sProdVersion='|| sProdVersion ||', nBaseEnvId='|| nBaseEnvId ||', nUserId='|| nUserId );
3204
 
3205
	END IF;
3206
	/*-------------------------------------------------------*/
3207
 
3208
	-- Get Product Name --
3209
	SELECT PKG_NAME INTO ProdName FROM PACKAGES WHERE PKG_ID = nPkgId;
3210
 
3211
 
3212
	-- Create Product Version in Release Manager if Required, and Get Prod_id --
3213
	Seed_Package_Names_Versions ( ProdName, sProdVersion, nUserId, ProdId );
3214
 
3215
 
3216
	-- Add Product To Base Env --
3217
	OPEN prod_cur;
3218
	FETCH prod_cur INTO prod_rec;
3219
 
3220
	IF prod_cur%NOTFOUND THEN
3221
	   pk_Base_Env.Add_Product ( ProdId, nBaseEnvId, nOsId, nUserId );
3222
 
3223
	   -- Update Comments
3224
	   IF (NOT sComments IS NULL) THEN
3225
	   		UPDATE BASE_ENV_CONTENTS bec SET
3226
				bec.BASE_ENV_COMMENTS = sComments
3227
			 WHERE bec.BASE_ENV_ID = nBaseEnvId
3228
			   AND bec.PROD_ID = ProdId;
3229
 
3230
	   END IF;
3231
	END IF;
3232
 
3233
	CLOSE prod_cur;
3234
 
3235
 
3236
END	Add_Product_Wrap;    
3237
/*--------------------------------------------------------------------------------------------------*/
3238
PROCEDURE Update_Product ( nOldProdId IN BASE_ENV_CONTENTS.PROD_ID%TYPE,
3239
						   sNewProdIdVersion IN VARCHAR2,
3240
						   nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
3241
						   nSeqNum IN BASE_ENV_CONTENTS.SEQ_NUM%TYPE,
3242
						   sComments IN BASE_ENV_CONTENTS.BASE_ENV_COMMENTS%TYPE,
3243
						   sSunOSElectronicName IN PACKAGES.SUNOS_ELECTRONIC_NAME%TYPE,
3244
						   sWinElectronicName IN PACKAGES.WIN_ELECTRONIC_NAME%TYPE,
3245
						   sNotXML IN BASE_ENV_CONTENTS.NOT_XML%TYPE,
3246
						   sPatchElectronicName IN PACKAGE_VERSIONS.PATCH_ELECTRONIC_NAME%TYPE,
3247
						   nUserId IN NUMBER,
3248
						   outProdId OUT PACKAGE_VERSIONS.PV_ID%TYPE ) IS
3249
 
3250
nNewProdId BASE_ENV_CONTENTS.PROD_ID%TYPE;		
3251
 
3252
sProdName PACKAGES.PKG_NAME%TYPE;					  
3253
 
3254
CURSOR curProd IS
3255
 	SELECT pv.PV_ID
3256
	  FROM PACKAGE_VERSIONS pv
3257
	 WHERE pv.pkg_id IN ( SELECT pv.pkg_id FROM PACKAGE_VERSIONS pv WHERE pv.PV_ID = nOldProdId )
3258
	   AND pv.PKG_VERSION = sNewProdIdVersion;
3259
recProd curProd%ROWTYPE;						   
3260
 
3261
BEGIN
3262
	/*--------------- Business Rules Here -------------------*/
3263
	IF (nOldProdId IS NULL) OR (sNewProdIdVersion IS NULL) OR (nBaseEnvId IS NULL) OR (nSeqNum IS NULL)
3264
	THEN
3265
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nOldProdId= '|| nOldProdId  ||', sNewProdIdVersion= '|| sNewProdIdVersion ||', nBaseEnvId= '|| nBaseEnvId ||', nSeqNum= '|| nSeqNum);
3266
	END IF;
3267
	/*-------------------------------------------------------*/
3268
 
3269
	-- Get new prod_id
3270
	OPEN curProd;
3271
	FETCH curProd INTO recProd;
3272
 
3273
	-- Get the Package Name
3274
	SELECT pkg.pkg_name into sProdName
3275
	FROM PACKAGES pkg, PACKAGE_VERSIONS pv
3276
	WHERE pkg.pkg_id = pv.pkg_id 
3277
	AND pv.pv_id = nOldProdId;		
3278
 
3279
	IF curProd%FOUND THEN
3280
		nNewProdId := recProd.PV_ID;
3281
	ELSE
3282
		-- Call Release Manager to add new product	
3283
		Seed_Package_Names_Versions ( sProdName, sNewProdIdVersion, nUserId, outProdId );
3284
 
3285
		nNewProdId := outProdId;
3286
		/*RAISE_APPLICATION_ERROR (-20000, 'Version '|| sNewProdIdVersion ||' does not exist.');*/
3287
	END IF;
3288
 
3289
	CLOSE curProd;
3290
 
3291
 
3292
	-- Update Product Details
3293
	UPDATE BASE_ENV_CONTENTS SET
3294
		PROD_ID = nNewProdId,
3295
		BASE_ENV_COMMENTS = sComments,
3296
		NOT_XML = sNotXML
3297
	 WHERE BASE_ENV_ID = nBaseEnvId
3298
	   AND PROD_ID = nOldProdId;
3299
 
3300
 
3301
	UPDATE PACKAGES SET
3302
		SUNOS_ELECTRONIC_NAME = sSunOSElectronicName,
3303
		WIN_ELECTRONIC_NAME = sWinElectronicName
3304
	WHERE  PKG_ID = 
3305
	(
3306
	 SELECT PKG_ID
3307
	 FROM PACKAGE_VERSIONS 
3308
	 WHERE PACKAGE_VERSIONS.PV_ID = nNewProdId
3309
	);   
3310
 
3311
 
3312
	UPDATE PACKAGE_VERSIONS SET 
3313
		 PATCH_ELECTRONIC_NAME = sPatchElectronicName
3314
	WHERE PV_ID = nNewProdId;   		   
3315
 
3316
 
3317
 
3318
	-- Update seq_num
3319
	Shift_Product_SeqNum ( nNewProdId, nBaseEnvId, nSeqNum );
3320
 
3321
END	Update_Product; 
3322
/*--------------------------------------------------------------------------------------------------*/
3323
PROCEDURE Shift_Product_SeqNum ( nProdId IN BASE_ENV_CONTENTS.PROD_ID%TYPE,
3324
		  				 	     nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
3325
						 		 nToSeqNum IN BASE_ENV_CONTENTS.SEQ_NUM%TYPE ) IS
3326
 
3327
currSeqNum NUMBER;
3328
FromSeqNum NUMBER;
3329
 
3330
BEGIN
3331
	 -- Get Current seq_num
3332
	 SELECT bec.SEQ_NUM INTO currSeqNum
3333
	   FROM BASE_ENV_CONTENTS bec
3334
	  WHERE bec.BASE_ENV_ID = nBaseEnvId
3335
	    AND bec.PROD_ID = nProdId;
3336
 
3337
 
3338
	 IF currSeqNum > nToSeqNum
3339
	 THEN
3340
 
3341
		FromSeqNum := nToSeqNum;
3342
 
3343
			-- Shift others Up
3344
		UPDATE BASE_ENV_CONTENTS bec SET
3345
			   bec.SEQ_NUM = bec.SEQ_NUM + 1
3346
		 WHERE bec.BASE_ENV_ID = nBaseEnvId 
3347
		   AND bec.PROD_ID != nProdId
3348
		   AND bec.SEQ_NUM BETWEEN  FromSeqNum  AND  currSeqNum - 1;
3349
 
3350
 
3351
	 ELSIF currSeqNum < nToSeqNum
3352
	 THEN
3353
 
3354
		FromSeqNum := currSeqNum + 1;  
3355
 
3356
		 -- Shift others Down
3357
		UPDATE BASE_ENV_CONTENTS bec SET
3358
		   	   bec.SEQ_NUM = bec.SEQ_NUM - 1
3359
		 WHERE bec.BASE_ENV_ID = nBaseEnvId 
3360
		   AND bec.PROD_ID != nProdId
3361
		   AND bec.SEQ_NUM BETWEEN  FromSeqNum  AND  nToSeqNum;
3362
 
3363
	 END IF;
3364
 
3365
 
3366
	 -- Move Product to new seq_num
3367
	 UPDATE BASE_ENV_CONTENTS bec SET
3368
		    bec.SEQ_NUM = nToSeqNum
3369
	  WHERE bec.BASE_ENV_ID = nBaseEnvId 
3370
	    AND bec.PROD_ID = nProdId;
3371
 
3372
 
3373
 
3374
END Shift_Product_SeqNum;
3375
/*--------------------------------------------------------------------------------------------------*/
3376
PROCEDURE Sort_Products ( sProdIdOrder IN VARCHAR2,
3377
		  			  	  nBaseEnvId IN BASE_ENV_CONTENTS.BASE_ENV_ID%TYPE,
3378
						  nUserId IN NUMBER ) IS
3379
 
3380
	nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();						 
3381
	SeqNum NUMBER;
3382
 
3383
 
3384
BEGIN
3385
	/*--------------- Business Rules Here -------------------*/
3386
	-- Check for parameters
3387
	IF (sProdIdOrder IS NULL)  OR (nBaseEnvId IS NULL) 
3388
	THEN
3389
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBaseEnvId='|| nBaseEnvId  ||' sProdIdOrder='|| sProdIdOrder  );
3390
	END IF;
3391
	/*-------------------------------------------------------*/
3392
 
3393
	nIdCollector := IN_LIST_NUMBER ( sProdIdOrder );
3394
 
3395
	-- Set start sequence number
3396
	SeqNum := 1;
3397
 
3398
	FOR i IN 1..nIdCollector.COUNT
3399
	LOOP
3400
 
3401
		-- Update new sequence number
3402
		UPDATE BASE_ENV_CONTENTS osc SET
3403
			osc.SEQ_NUM = SeqNum
3404
		 WHERE osc.BASE_ENV_ID = nBaseEnvId
3405
		   AND osc.PROD_ID = nIdCollector(i);
3406
 
3407
		SeqNum := SeqNum + 1;
3408
 
3409
	END LOOP;
3410
 
3411
 
3412
END	Sort_Products;
3413
/*--------------------------------------------------------------------------------------------------*/
3414
 
3415
 
3416
END pk_Base_Env;
3417
 
3418
/
3419
--------------------------------------------------------
3420
--  DDL for Package Body PK_BOM
3421
--------------------------------------------------------
3422
 
5924 dpurdie 3423
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_BOM" 
3926 dpurdie 3424
IS
3425
/* ---------------------------------------------------------------------------
3426
    Version: 2.0
3427
   --------------------------------------------------------------------------- */
3428
 
3429
/*--------------------------------------------------------------------------------------------------*/
3430
PROCEDURE Add_Bom ( sBomName IN BOM_NAMES.BOM_NAME%TYPE DEFAULT NULL,
3431
		  		  	sBomVersion IN BOMS.BOM_VERSION%TYPE,
3432
		  		  	sBomLifeCycle IN BOMS.BOM_LIFECYCLE%TYPE,		
3433
					sBomComments IN BOMS.BOM_COMMENTS%TYPE DEFAULT NULL,
3434
					nToBranchId IN BOMS.BRANCH_ID%TYPE,
3435
					nFromBomId IN BOMS.BOM_ID%TYPE DEFAULT NULL,
3436
					nRtagId IN BOMS.RTAG_ID_FK%TYPE,
3437
					nUserId IN BOM_STATE.USER_ID%TYPE ) IS
3438
 
3439
BomId BOMS.BOM_ID%TYPE;
3440
ParentBomId BOMS.PARENT_BOM_ID%TYPE;
3441
BomNameId BOM_NAMES.BOM_NAME_ID%TYPE;
3442
BomVersion BOMS.BOM_VERSION%TYPE;
3443
BomLifeCycle BOMS.BOM_LIFECYCLE%TYPE;
3444
ProjId BRANCHES.PROJ_ID%TYPE;
3445
 
3446
CURSOR curBom IS 
3447
		SELECT bo.BOM_ID
3448
		  FROM BOMS bo,
3449
		  	   BRANCHES br
3450
		 WHERE bo.BRANCH_ID = br.BRANCH_ID
3451
		   AND br.PROJ_ID = ProjId
3452
		   AND bo.BOM_NAME_ID = BomNameId
3453
		   AND bo.BOM_VERSION = BomVersion
3454
		   AND bo.BOM_LIFECYCLE = BomLifeCycle;
3455
recBom curBom%ROWTYPE;
3456
 
3457
DUPLICATE_BOM EXCEPTION;
3458
 
3459
BEGIN
3460
	/*--------------- Business Rules Here -------------------*/
3461
	IF (nToBranchId IS NULL) OR (nUserId IS NULL)
3462
	THEN
3463
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nToBranchId= '|| nToBranchId ||', nUserId='|| nUserId );
3464
 
3465
	END IF;
3466
	/*-------------------------------------------------------*/
3467
 
3468
	-- Get bom_id
3469
	SELECT SEQ_BOM_ID.NEXTVAL INTO BomId FROM DUAL;
3470
 
3471
 
3472
	-- Get bom_name_id
3473
	IF nFromBomId IS NULL THEN
3474
		BomNameId := New_Bom_Name ( sBomName );
3475
        ParentBomId := BomId;
3476
	ELSE
3477
		BomNameId := New_Bom_Name ( nFromBomId );
3478
        ParentBomId := nFromBomId;
3479
	END IF;		
3480
 
3481
 
3482
 
3483
 
3484
	-- Get Bom Version and Lifecycle
3485
	--Get_Next_Version ( nFromBomId, nToBranchId, BomVersion, BomLifeCycle, ParentBomId, BomNameId );
3486
 
3487
 
3488
 
3489
	-- Get proj_id
3490
	SELECT br.PROJ_ID INTO ProjId
3491
	  FROM BRANCHES br
3492
	 WHERE br.BRANCH_ID = nToBranchId;
3493
 
3494
 
3495
 
3496
	-- Check for duplicate BOMs
3497
	OPEN curBom;
3498
    FETCH curBom INTO recBom;
3499
 
3500
    IF curBom%FOUND
3501
    THEN
3502
		RAISE DUPLICATE_BOM;
3503
	END IF;
3504
 
3505
	CLOSE curBom;
3506
 
3507
 
3508
 
3509
	-- Add Blank Bom --
3510
	INSERT INTO BOMS ( BOM_ID, BRANCH_ID, BOM_NAME_ID, BOM_COMMENTS, BOM_VERSION, BOM_LIFECYCLE, IS_READONLY, IS_HIDDEN, PARENT_BOM_ID, RTAG_ID_FK )
3511
	VALUES ( BomId, nToBranchId, BomNameId, sBomComments, sBomVersion, sBomLifeCycle, 'N', 'N', ParentBomId, nRtagId  );
3512
 
3513
 
3514
 
3515
 
3516
	/* Log BOM_TRAIL */
3517
	pk_Bom.Log_Bom_Trail ( BomId, 'CREATED: Version '|| sBomVersion ||'.'|| sBomLifeCycle , nUserId );
3518
 
3519
 
3520
 
3521
	IF nFromBomId IS NOT NULL THEN
3522
		/* Add Bom Clonned from ... */
3523
		pk_Utils.Clone_BOM ( nFromBomId, BomId, nUserId );
3524
 
3525
	END IF;
3526
 
3527
 
3528
 
3529
	--- Set Bom State ---
3530
	Release_To ( BomId, nUserId );
3531
 
3532
 
3533
	EXCEPTION
3534
    WHEN DUPLICATE_BOM
3535
	THEN		
3536
		RAISE_APPLICATION_ERROR (-20000, 'BOM "'|| sBomName ||' '|| BomVersion ||'.'|| BomLifeCycle ||'" is Already Used in this Project.');
3537
 
3538
END	Add_Bom;
3539
/*--------------------------------------------------------------------------------------------------*/
3540
PROCEDURE Update_Bom ( nBomId IN BOMS.BOM_ID%TYPE,
3541
					   nRtagId IN BOMS.RTAG_ID_FK%TYPE,
3542
					   sBomComment IN BOMS.BOM_COMMENTS%TYPE,
3543
					   nUserId IN NUMBER )  IS
3544
 
3545
ReleaseName VARCHAR2(100);					   
3546
 
3547
BEGIN
3548
	/*--------------- Business Rules Here -------------------*/
3549
	/*-------------------------------------------------------*/
3550
 
3551
	--- Update Bom Properties ---
3552
	UPDATE BOMS bo SET
3553
		bo.RTAG_ID_FK = nRtagId,
3554
		bo.BOM_COMMENTS = sBomComment
3555
	WHERE bo.BOM_ID = nBomId;
3556
 
3557
	SELECT RTAG_NAME INTO ReleaseName
3558
	FROM RELEASE_TAGS 
3559
	WHERE RTAG_ID = nRtagId;
3560
 
3561
 
3562
	/* Log BOM_TRAIL */
3563
	pk_Bom.Log_Bom_Trail ( nBomId, 'Updated BOM properties: Set Release Manager Reference ='||ReleaseName||' and comments ='||sBomComment, nUserId );
3564
 
3565
 
3566
END	Update_Bom;
3567
/*--------------------------------------------------------------------------------------------------*/
3568
PROCEDURE Update_ProdBom ( nBomId IN BOMS.BOM_ID%TYPE,
3569
					   nRtagId IN BOMS.RTAG_ID_FK%TYPE,
3570
					   sBomComment IN BOMS.BOM_COMMENTS%TYPE,
3571
					   nUserId IN NUMBER )  IS
3572
 
3573
ReleaseName VARCHAR2(100);					   
3574
 
3575
BEGIN
3576
	/*--------------- Business Rules Here -------------------*/
3577
	/*-------------------------------------------------------*/
3578
 
3579
	--- Update Bom Properties ---
3580
	UPDATE BOMS bo SET
3581
		bo.RTAG_ID_FK = nRtagId,
3582
		bo.BOM_COMMENTS = sBomComment
3583
	WHERE bo.BOM_ID = nBomId;
3584
 
3585
	SELECT BRANCH_NAME INTO ReleaseName
3586
	FROM BRANCHES 
3587
	WHERE BRANCH_ID = nRtagId;
3588
 
3589
 
3590
	/* Log BOM_TRAIL */
3591
	pk_Bom.Log_Bom_Trail ( nBomId, 'Updated BOM properties: Set Deployment Manager Reference ='||ReleaseName||' and comments ='||sBomComment, nUserId );
3592
 
3593
 
3594
END	Update_ProdBom;
3595
/*--------------------------------------------------------------------------------------------------*/
3596
FUNCTION New_Bom_Name ( sBomName IN BOM_NAMES.BOM_NAME%TYPE ) RETURN BOM_NAMES.BOM_NAME_ID%TYPE IS
3597
 
3598
ReturnValue 	 BOM_NAMES.BOM_NAME_ID%TYPE;	
3599
 
3600
CURSOR curBomNames IS
3601
	SELECT bn.BOM_NAME_ID
3602
	  FROM BOM_NAMES bn
3603
	 WHERE bn.BOM_NAME = sBomName;
3604
recBomNames curBomNames%ROWTYPE;
3605
 
3606
BEGIN
3607
	/*--------------- Business Rules Here -------------------*/
3608
	/*-------------------------------------------------------*/
3609
 
3610
	-- Check for existance of this name
3611
	OPEN curBomNames;
3612
	FETCH curBomNames INTO recBomNames;
3613
 
3614
	ReturnValue := NULL;
3615
	IF curBomNames%FOUND THEN
3616
		ReturnValue := recBomNames.BOM_NAME_ID;
3617
	END IF;
3618
 
3619
	CLOSE curBomNames;
3620
 
3621
 
3622
	-- Finnaly Create Name if required --    
3623
	IF ReturnValue IS NULL THEN
3624
		-- Get bom_name_id
3625
		SELECT SEQ_BOM_NAME_ID.NEXTVAL INTO ReturnValue FROM DUAL;
3626
 
3627
		INSERT INTO BOM_NAMES ( BOM_NAME_ID, BOM_NAME )
3628
		VALUES ( ReturnValue, sBomName );
3629
 
3630
	END IF;	
3631
 
3632
 
3633
	RETURN ReturnValue;
3634
END	New_Bom_Name;
3635
/*--------------------------------------------------------------------------------------------------*/
3636
FUNCTION New_Bom_Name ( nFromBomId IN BOMS.BOM_NAME_ID%TYPE ) RETURN BOMS.BOM_NAME_ID%TYPE IS
3637
 
3638
ReturnValue 	 BOMS.BOM_NAME_ID%TYPE;	
3639
 
3640
BEGIN
3641
	/*--------------- Business Rules Here -------------------*/
3642
	/*-------------------------------------------------------*/
3643
 
3644
	-- Get bom_name_id
3645
	SELECT bo.BOM_NAME_ID INTO ReturnValue
3646
	  FROM BOMS bo
3647
	 WHERE bo.BOM_ID = nFromBomId;
3648
 
3649
 
3650
	RETURN ReturnValue;
3651
END	New_Bom_Name;
3652
/*--------------------------------------------------------------------------------------------------*/
3653
PROCEDURE Accept_Reject ( nBomId IN BOMS.BOM_ID%TYPE,
3654
						  cIsRejected IN BOMS.IS_REJECTED%TYPE,
3655
						  sComments IN REJECTION_TRAIL.COMMENTS%TYPE,
3656
						  nStateId IN BOM_STATE.STATE_ID%TYPE DEFAULT NULL,
3657
						  nUserId IN REJECTION_TRAIL.USER_ID%TYPE  ) IS
3658
 
3659
StateName STATES.STATE_NAME%TYPE;						  
3660
IsOfficial BOMS.IS_READONLY%TYPE;	
3661
IsRejected VARCHAR2(50);					  
3662
 
3663
BEGIN
3664
	/*--------------- Business Rules Here -------------------*/
3665
	-- Check if Bom is official
3666
	SELECT bo.IS_READONLY INTO IsOfficial
3667
	  FROM BOMS bo
3668
	 WHERE bo.BOM_ID = nBomId;
3669
 
3670
	IF IsOfficial != 'Y' THEN
3671
		RAISE_APPLICATION_ERROR (-20000, 'BOM must be locked first.' );
3672
	END IF;
3673
	/*-------------------------------------------------------*/
3674
 
3675
	-- Get State Name
3676
	SELECT st.STATE_NAME INTO StateName
3677
	  FROM STATES st
3678
	 WHERE st.STATE_ID = nStateId;
3679
 
3680
 
3681
	-- AcceptReject BOM
3682
	UPDATE BOMS bo SET
3683
		bo.IS_REJECTED = cIsRejected
3684
	WHERE bo.BOM_ID = nBomId;
3685
 
3686
 
3687
	-- Auto-Hide Bom
3688
	IF cIsRejected = 'Y' THEN
3689
		pk_State.Auto_Hide ( nStateId, nBomId, GET_SYSTEM_VALUE('enumEVENT_ON_REJECT_BOM') );
3690
	ELSE
3691
		pk_State.Auto_Hide ( nStateId, nBomId, GET_SYSTEM_VALUE('enumEVENT_ON_ACCEPT_BOM') );
3692
	END IF;
3693
 
3694
 
3695
	-- Log Rejection Trail 
3696
	pk_Utils.Log_Rejection_Trail ( GET_SYSTEM_VALUE('enumENTITY_TYPE_BOM'), nBomId, cIsRejected, nUserId, sComments );
3697
 
3698
 
3699
	/* Log BOM_TRAIL */
3700
	-- Get Log Title
3701
	IsRejected := 'ACCEPTED';
3702
	IF cIsRejected = 'Y' THEN
3703
		IsRejected := 'REJECTED';
3704
	END IF;
3705
 
3706
	-- Finnaly log it
3707
	Log_Bom_Trail ( nBomId, IsRejected ||': By '|| StateName, nUserId, sComments );
3708
 
3709
END	Accept_Reject;
3710
/*--------------------------------------------------------------------------------------------------*/
3711
PROCEDURE Set_Bom_Official ( nBomId IN BOMS.BOM_ID%TYPE,
3712
							 cIsOfficial IN BOMS.IS_READONLY%TYPE,
3713
							 nStateId IN BOM_STATE.STATE_ID%TYPE,
3714
							 nUserId IN NUMBER )  IS
3715
 
3716
 
3717
BEGIN
3718
	/*--------------- Business Rules Here -------------------*/
3719
	/*-------------------------------------------------------*/
3720
	--- Set Bom Official or Not ---
3721
	UPDATE BOMS bo SET
3722
	bo.IS_READONLY = cIsOfficial
3723
	WHERE bo.BOM_ID = nBomId;
3724
 
3725
 
3726
	-- Auto-Hide Bom
3727
	IF cIsOfficial = 'Y' THEN
3728
		pk_State.Auto_Hide ( nStateId, nBomId, GET_SYSTEM_VALUE('enumEVENT_ON_LOCK_BOM') );
3729
 
3730
		-- Update node version
3731
		Update_Nodes_Version ( nBomId, nUserId );
3732
	ELSE
3733
		pk_State.Auto_Hide ( nStateId, nBomId, GET_SYSTEM_VALUE('enumEVENT_ON_UNLOCK_BOM') );
3734
	END IF;
3735
 
3736
 
3737
 
3738
	/* Log BOM_TRAIL */
3739
	pk_Bom.Log_Bom_Trail ( nBomId, 'LOCKED: '|| cIsOfficial, nUserId );
3740
 
3741
 
3742
END	Set_Bom_Official;
3743
/*--------------------------------------------------------------------------------------------------*/
3744
PROCEDURE Update_Nodes_Version ( nBomId IN BOMS.BOM_ID%TYPE,
3745
							 	 nUserId IN NUMBER )  IS
3746
 
3747
	CompareBomId NUMBER;
3748
	ProjId NUMBER;
3749
	BomVersion VARCHAR2(4000);
3750
 
3751
	CURSOR curUpdateNode IS
3752
		SELECT DISTINCT
3753
			   nlook.NODE_ID,
3754
			   DECODE ( nlc.LAST_LIFE_CYCLE,
3755
			   			NULL, 0,
3756
						nlc.LAST_LIFE_CYCLE + 1 ) AS NEW_LIFE_CYCLE	   
3757
		  FROM (
3758
 
3759
		  		/* ADDED PATCHES ONLY */
3760
				SELECT 'A' AS CHANGE_TYPE, newbom.PROD_ID, newbom.PK 
3761
				  FROM (
3762
				  		SELECT osc.PROD_ID,
3763
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
3764
						  FROM OS_CONTENTS osc,
3765
						  	   OPERATING_SYSTEMS os,
3766
							   NETWORK_NODES nn,
3767
							   BOM_CONTENTS bc,
3768
							   PACKAGE_VERSIONS pv
3769
						 WHERE osc.OS_ID = os.OS_ID
3770
						   AND os.NODE_ID = nn.NODE_ID
3771
						   AND bc.NODE_ID = nn.NODE_ID
3772
						   AND osc.PROD_ID = pv.PV_ID
3773
						   AND NOT pv.IS_PATCH IS NULL
3774
						   AND bc.BOM_ID = nBomId	
3775
				  	   ) newbom,
3776
					   (
3777
					   	SELECT osc.PROD_ID,
3778
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
3779
						  FROM OS_CONTENTS osc,
3780
						  	   OPERATING_SYSTEMS os,
3781
							   NETWORK_NODES nn,
3782
							   BOM_CONTENTS bc,
3783
							   PACKAGE_VERSIONS pv
3784
						 WHERE osc.OS_ID = os.OS_ID
3785
						   AND os.NODE_ID = nn.NODE_ID
3786
						   AND bc.NODE_ID = nn.NODE_ID
3787
						   AND osc.PROD_ID = pv.PV_ID
3788
						   AND NOT pv.IS_PATCH IS NULL
3789
						   AND bc.BOM_ID = CompareBomId	
3790
					   ) oldbom
3791
				 WHERE newbom.PK = oldbom.PK (+) 
3792
				   AND newbom.PROD_ID = oldbom.PROD_ID (+)
3793
				   AND oldbom.PK IS NULL
3794
				UNION 
3795
		  		/* ADDED PATCHES ONLY TO BASE CONFIGURATION */
3796
				SELECT 'A' AS CHANGE_TYPE, newbom.PROD_ID, newbom.PK 
3797
				  FROM (
3798
				  		SELECT bec.PROD_ID,
3799
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
3800
						  FROM BASE_ENV_CONTENTS bec,
3801
						  	   OS_BASE_ENV obe,
3802
						  	   OPERATING_SYSTEMS os,
3803
							   NETWORK_NODES nn,
3804
							   BOM_CONTENTS bc,
3805
							   PACKAGE_VERSIONS pv
3806
						 WHERE obe.OS_ID = os.OS_ID
3807
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
3808
						   AND os.NODE_ID = nn.NODE_ID
3809
						   AND bc.NODE_ID = nn.NODE_ID
3810
						   AND bec.PROD_ID = pv.PV_ID
3811
						   AND NOT pv.IS_PATCH IS NULL
3812
						   AND bc.BOM_ID = nBomId	
3813
				  	   ) newbom,
3814
					   (
3815
					   	SELECT bec.PROD_ID,
3816
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
3817
						  FROM BASE_ENV_CONTENTS bec,
3818
						  	   OS_BASE_ENV obe,
3819
						  	   OPERATING_SYSTEMS os,
3820
							   NETWORK_NODES nn,
3821
							   BOM_CONTENTS bc,
3822
							   PACKAGE_VERSIONS pv
3823
						 WHERE obe.OS_ID = os.OS_ID
3824
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
3825
						   AND os.NODE_ID = nn.NODE_ID
3826
						   AND bc.NODE_ID = nn.NODE_ID
3827
						   AND bec.PROD_ID = pv.PV_ID
3828
						   AND NOT pv.IS_PATCH IS NULL
3829
						   AND bc.BOM_ID = CompareBomId	
3830
					   ) oldbom
3831
				 WHERE newbom.PK = oldbom.PK (+) 
3832
				   AND newbom.PROD_ID = oldbom.PROD_ID (+)
3833
				   AND oldbom.PK IS NULL
3834
				UNION				
3835
 
3836
				/* ADDED PRODUCTS ONLY */
3837
				SELECT DECODE( oldbom.PROD_ID,
3838
							   NULL, 'A', 'U' ) AS CHANGE_TYPE, 
3839
					   newbom.PROD_ID, newbom.PK
3840
				  FROM (
3841
				  		SELECT osc.PROD_ID,
3842
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
3843
							   pv.PKG_ID,
3844
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
3845
						  FROM OS_CONTENTS osc,
3846
						  	   OPERATING_SYSTEMS os,
3847
							   NETWORK_NODES nn,
3848
							   BOM_CONTENTS bc,
3849
							   PACKAGE_VERSIONS pv
3850
						 WHERE osc.OS_ID = os.OS_ID
3851
						   AND os.NODE_ID = nn.NODE_ID
3852
						   AND bc.NODE_ID = nn.NODE_ID
3853
						   AND osc.PROD_ID = pv.PV_ID
3854
						   AND pv.IS_PATCH IS NULL
3855
						   AND bc.BOM_ID = nBomId	
3856
				  	   ) newbom,
3857
					   (
3858
					   	SELECT osc.PROD_ID,
3859
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
3860
							   pv.PKG_ID,
3861
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
3862
						  FROM OS_CONTENTS osc,
3863
						  	   OPERATING_SYSTEMS os,
3864
							   NETWORK_NODES nn,
3865
							   BOM_CONTENTS bc,
3866
							   PACKAGE_VERSIONS pv
3867
						 WHERE osc.OS_ID = os.OS_ID
3868
						   AND os.NODE_ID = nn.NODE_ID
3869
						   AND bc.NODE_ID = nn.NODE_ID
3870
						   AND osc.PROD_ID = pv.PV_ID
3871
						   AND pv.IS_PATCH IS NULL
3872
						   AND bc.BOM_ID = CompareBomId	
3873
					   ) oldbom
3874
				 WHERE newbom.PK = oldbom.PK (+) 
3875
				   --AND newbom.PROD_ID = oldbom.PROD_ID (+)
3876
				   AND newbom.PKG_ID  = oldbom.PKG_ID (+)
3877
				   AND newbom.V_EXT  = oldbom.V_EXT (+) 
3878
				   AND ( oldbom.PROD_ID != newbom.PROD_ID  OR oldbom.PROD_ID IS NULL )	
3879
				   AND newbom.PROD_ID NOT IN 
3880
				   (
3881
				   	   SELECT osc.PROD_ID
3882
					   FROM OS_CONTENTS osc,
3883
					  	    OPERATING_SYSTEMS os,
3884
							NETWORK_NODES nn,
3885
							BOM_CONTENTS bc,
3886
							PACKAGE_VERSIONS pv
3887
					  WHERE osc.OS_ID = os.OS_ID
3888
						AND os.NODE_ID = nn.NODE_ID
3889
						AND bc.NODE_ID = nn.NODE_ID
3890
						AND osc.PROD_ID = pv.PV_ID
3891
						AND pv.IS_PATCH IS NULL
3892
						AND bc.BOM_ID = CompareBomId
3893
				  )	 				   
3894
 
3895
				UNION
3896
 
3897
				/* ADDED PRODUCTS ONLY TO BASE CONFIGURATION */
3898
				SELECT DECODE( oldbom.PROD_ID,
3899
							   NULL, 'A', 'U' ) AS CHANGE_TYPE, 
3900
					   newbom.PROD_ID, newbom.PK
3901
				  FROM (
3902
				  		SELECT bec.PROD_ID,
3903
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
3904
							   pv.PKG_ID,
3905
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
3906
						  FROM BASE_ENV_CONTENTS bec,
3907
						  	   OS_BASE_ENV obe,
3908
						  	   OPERATING_SYSTEMS os,
3909
							   NETWORK_NODES nn,
3910
							   BOM_CONTENTS bc,
3911
							   PACKAGE_VERSIONS pv
3912
						 WHERE obe.OS_ID = os.OS_ID
3913
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
3914
						   AND os.NODE_ID = nn.NODE_ID
3915
						   AND bc.NODE_ID = nn.NODE_ID
3916
						   AND bec.PROD_ID = pv.PV_ID
3917
						   AND pv.IS_PATCH IS NULL
3918
						   AND bc.BOM_ID = nBomId	
3919
				  	   ) newbom,
3920
					   (
3921
					   	SELECT bec.PROD_ID,
3922
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
3923
							   pv.PKG_ID,
3924
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
3925
						  FROM BASE_ENV_CONTENTS bec,
3926
						  	   OS_BASE_ENV obe,
3927
						  	   OPERATING_SYSTEMS os,
3928
							   NETWORK_NODES nn,
3929
							   BOM_CONTENTS bc,
3930
							   PACKAGE_VERSIONS pv
3931
						 WHERE obe.OS_ID = os.OS_ID
3932
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
3933
						   AND os.NODE_ID = nn.NODE_ID
3934
						   AND bc.NODE_ID = nn.NODE_ID
3935
						   AND bec.PROD_ID = pv.PV_ID
3936
						   AND pv.IS_PATCH IS NULL
3937
						   AND bc.BOM_ID = CompareBomId	
3938
					   ) oldbom
3939
				 WHERE newbom.PK = oldbom.PK (+) 
3940
				   --AND newbom.PROD_ID = oldbom.PROD_ID (+)
3941
				   AND newbom.PKG_ID  = oldbom.PKG_ID (+)
3942
				   AND newbom.V_EXT  = oldbom.V_EXT (+) 
3943
				   AND ( oldbom.PROD_ID != newbom.PROD_ID  OR oldbom.PROD_ID IS NULL )	   
3944
				UNION
3945
 
3946
				/* REMOVED PRODUCTS ONLY*/    
3947
				SELECT 'R' AS CHANGE_TYPE, oldbom.PROD_ID, oldbom.PK
3948
				  FROM (
3949
				  		SELECT osc.PROD_ID,
3950
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
3951
							   pv.PKG_ID,
3952
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
3953
						  FROM OS_CONTENTS osc,
3954
						  	   OPERATING_SYSTEMS os,
3955
							   NETWORK_NODES nn,
3956
							   BOM_CONTENTS bc,
3957
							   PACKAGE_VERSIONS pv
3958
						 WHERE osc.OS_ID = os.OS_ID
3959
						   AND os.NODE_ID = nn.NODE_ID
3960
						   AND bc.NODE_ID = nn.NODE_ID
3961
						   AND osc.PROD_ID = pv.PV_ID
3962
						   AND pv.IS_PATCH IS NULL
3963
						   AND bc.BOM_ID = nBomId	
3964
				  	   ) newbom,
3965
					   (
3966
					   	SELECT osc.PROD_ID,
3967
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
3968
							   pv.PKG_ID,
3969
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
3970
						  FROM OS_CONTENTS osc,
3971
						  	   OPERATING_SYSTEMS os,
3972
							   NETWORK_NODES nn,
3973
							   BOM_CONTENTS bc,
3974
							   PACKAGE_VERSIONS pv
3975
						 WHERE osc.OS_ID = os.OS_ID
3976
						   AND os.NODE_ID = nn.NODE_ID
3977
						   AND bc.NODE_ID = nn.NODE_ID
3978
						   AND osc.PROD_ID = pv.PV_ID
3979
						   AND pv.IS_PATCH IS NULL
3980
						   AND bc.BOM_ID = CompareBomId	
3981
					   ) oldbom
3982
				 WHERE newbom.PK (+) = oldbom.PK  
3983
				   --AND newbom.PROD_ID (+) = oldbom.PROD_ID
3984
				   AND newbom.PKG_ID (+) = oldbom.PKG_ID
3985
				   AND newbom.V_EXT (+) = oldbom.V_EXT   
3986
				   AND newbom.PK IS NULL  
3987
				UNION   
3988
				/* REMOVED PATCHES */    
3989
				SELECT 'R' AS CHANGE_TYPE, oldbom.PROD_ID, oldbom.PK
3990
				  FROM (
3991
				  		SELECT osc.PROD_ID,
3992
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
3993
						  FROM OS_CONTENTS osc,
3994
						  	   OPERATING_SYSTEMS os,
3995
							   NETWORK_NODES nn,
3996
							   BOM_CONTENTS bc,
3997
							   PACKAGE_VERSIONS pv
3998
						 WHERE osc.OS_ID = os.OS_ID
3999
						   AND os.NODE_ID = nn.NODE_ID
4000
						   AND bc.NODE_ID = nn.NODE_ID
4001
						   AND osc.PROD_ID = pv.PV_ID
4002
						   AND NOT pv.IS_PATCH IS NULL
4003
						   AND bc.BOM_ID = nBomId	
4004
				  	   ) newbom,
4005
					   (
4006
					   	SELECT osc.PROD_ID,
4007
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
4008
						  FROM OS_CONTENTS osc,
4009
						  	   OPERATING_SYSTEMS os,
4010
							   NETWORK_NODES nn,
4011
							   BOM_CONTENTS bc,
4012
							   PACKAGE_VERSIONS pv
4013
						 WHERE osc.OS_ID = os.OS_ID
4014
						   AND os.NODE_ID = nn.NODE_ID
4015
						   AND bc.NODE_ID = nn.NODE_ID
4016
						   AND osc.PROD_ID = pv.PV_ID
4017
						   AND NOT pv.IS_PATCH IS NULL
4018
						   AND bc.BOM_ID = CompareBomId	
4019
					   ) oldbom
4020
				 WHERE newbom.PK (+) = oldbom.PK  
4021
				   AND newbom.PROD_ID (+) = oldbom.PROD_ID  
4022
				   AND newbom.PK IS NULL 
4023
				   UNION
4024
				/* REMOVED PRODUCTS ONLY FROM BASE CONFIGURATION*/    
4025
				SELECT 'R' AS CHANGE_TYPE, oldbom.PROD_ID, oldbom.PK
4026
				  FROM (
4027
				  		SELECT bec.PROD_ID,
4028
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
4029
							   pv.PKG_ID,
4030
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
4031
						  FROM BASE_ENV_CONTENTS bec,
4032
						  	   OS_BASE_ENV obe,
4033
						  	   OPERATING_SYSTEMS os,
4034
							   NETWORK_NODES nn,
4035
							   BOM_CONTENTS bc,
4036
							   PACKAGE_VERSIONS pv
4037
						 WHERE obe.OS_ID = os.OS_ID
4038
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
4039
						   AND os.NODE_ID = nn.NODE_ID
4040
						   AND bc.NODE_ID = nn.NODE_ID
4041
						   AND bec.PROD_ID = pv.PV_ID
4042
						   AND pv.IS_PATCH IS NULL
4043
						   AND bc.BOM_ID = nBomId	
4044
				  	   ) newbom,
4045
					   (
4046
					   	SELECT bec.PROD_ID,
4047
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,
4048
							   pv.PKG_ID,
4049
							   NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXT
4050
						  FROM BASE_ENV_CONTENTS bec,
4051
						  	   OS_BASE_ENV obe,
4052
						  	   OPERATING_SYSTEMS os,
4053
							   NETWORK_NODES nn,
4054
							   BOM_CONTENTS bc,
4055
							   PACKAGE_VERSIONS pv
4056
						 WHERE obe.OS_ID = os.OS_ID
4057
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID 
4058
						   AND os.NODE_ID = nn.NODE_ID
4059
						   AND bc.NODE_ID = nn.NODE_ID
4060
						   AND bec.PROD_ID = pv.PV_ID
4061
						   AND pv.IS_PATCH IS NULL
4062
						   AND bc.BOM_ID = CompareBomId	
4063
					   ) oldbom
4064
				 WHERE newbom.PK (+) = oldbom.PK  
4065
				   --AND newbom.PROD_ID (+) = oldbom.PROD_ID
4066
				   AND newbom.PKG_ID (+) = oldbom.PKG_ID
4067
				   AND newbom.V_EXT (+) = oldbom.V_EXT   
4068
				   AND newbom.PK IS NULL  
4069
				UNION   
4070
				/* REMOVED PATCHES FROM BASE CONFIGURATION*/    
4071
				SELECT 'R' AS CHANGE_TYPE, oldbom.PROD_ID, oldbom.PK
4072
				  FROM (
4073
				  		SELECT bec.PROD_ID,
4074
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
4075
						  FROM BASE_ENV_CONTENTS bec,
4076
						  	   OS_BASE_ENV obe,
4077
						  	   OPERATING_SYSTEMS os,
4078
							   NETWORK_NODES nn,
4079
							   BOM_CONTENTS bc,
4080
							   PACKAGE_VERSIONS pv
4081
						 WHERE obe.OS_ID = os.OS_ID
4082
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
4083
						   AND os.NODE_ID = nn.NODE_ID
4084
						   AND bc.NODE_ID = nn.NODE_ID
4085
						   AND bec.PROD_ID = pv.PV_ID
4086
						   AND NOT pv.IS_PATCH IS NULL
4087
						   AND bc.BOM_ID = nBomId	
4088
				  	   ) newbom,
4089
					   (
4090
					   	SELECT bec.PROD_ID,
4091
							   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
4092
						  FROM BASE_ENV_CONTENTS bec,
4093
						  	   OS_BASE_ENV obe,
4094
						  	   OPERATING_SYSTEMS os,
4095
							   NETWORK_NODES nn,
4096
							   BOM_CONTENTS bc,
4097
							   PACKAGE_VERSIONS pv
4098
						 WHERE obe.OS_ID = os.OS_ID
4099
						   AND bec.BASE_ENV_ID = obe.BASE_ENV_ID
4100
						   AND os.NODE_ID = nn.NODE_ID
4101
						   AND bc.NODE_ID = nn.NODE_ID
4102
						   AND bec.PROD_ID = pv.PV_ID
4103
						   AND NOT pv.IS_PATCH IS NULL
4104
						   AND bc.BOM_ID = CompareBomId	
4105
					   ) oldbom
4106
				 WHERE newbom.PK (+) = oldbom.PK  
4107
				   AND newbom.PROD_ID (+) = oldbom.PROD_ID  
4108
				   AND newbom.PK IS NULL				    	
4109
 
4110
		       ) qry,
4111
			   (
4112
 
4113
		  		SELECT nn.NODE_ID,
4114
					   nn.NODE_NAME,
4115
					   nn.NODE_NAME ||'_'|| os.OS_NAME AS PK
4116
				  FROM OPERATING_SYSTEMS os,
4117
					   NETWORK_NODES nn,
4118
					   BOM_CONTENTS bc
4119
				 WHERE os.NODE_ID = nn.NODE_ID
4120
				   AND bc.NODE_ID = nn.NODE_ID
4121
				   AND bc.BOM_ID = nBomId
4122
 
4123
		  	   ) nlook,
4124
			   (
4125
 
4126
				SELECT nn.NODE_NAME, 
4127
					   MAX(nn.NODE_LIFE_CYCLE) AS LAST_LIFE_CYCLE
4128
				  FROM BOMS bo,
4129
				  	   BOM_CONTENTS bc,
4130
					   BRANCHES br,
4131
					   NETWORK_NODES nn
4132
				 WHERE bc.BOM_ID = bo.BOM_ID
4133
				   AND bo.BRANCH_ID = br.BRANCH_ID
4134
				   AND bc.NODE_ID = nn.NODE_ID
4135
				   AND br.PROJ_ID = ProjId
4136
		  	     GROUP BY nn.NODE_NAME
4137
 
4138
			   ) nlc
4139
		 WHERE nlook.PK = qry.PK 
4140
		   AND nlc.NODE_NAME = nlook.NODE_NAME;
4141
	recUpdateNode curUpdateNode%ROWTYPE;
4142
 
4143
 
4144
 
4145
BEGIN
4146
	/*--------------- Business Rules Here -------------------*/
4147
	/*-------------------------------------------------------*/
4148
 
4149
	-- Get some BOM details
4150
	SELECT bo.PARENT_BOM_ID, br.PROJ_ID, bo.BOM_VERSION ||'.'|| bo.BOM_LIFECYCLE INTO CompareBomId, ProjId, BomVersion
4151
	  FROM BOMS bo,
4152
	  	   BRANCHES br
4153
	 WHERE bo.BOM_ID = nBomId
4154
	   AND bo.BRANCH_ID = br.BRANCH_ID;
4155
 
4156
 
4157
	-- Update node version
4158
	OPEN curUpdateNode;
4159
	FETCH curUpdateNode INTO recUpdateNode;
4160
 
4161
	WHILE curUpdateNode%FOUND
4162
	LOOP
4163
 
4164
		UPDATE NETWORK_NODES nn SET
4165
			nn.NODE_VERSION = BomVersion,
4166
			nn.NODE_LIFE_CYCLE = recUpdateNode.NEW_LIFE_CYCLE
4167
		 WHERE nn.NODE_ID = recUpdateNode.NODE_ID;
4168
 
4169
		FETCH curUpdateNode INTO recUpdateNode;
4170
	END LOOP;
4171
 
4172
 
4173
	CLOSE curUpdateNode;	
4174
 
4175
END	Update_Nodes_Version;
4176
/*--------------------------------------------------------------------------------------------------*/
4177
PROCEDURE Destroy_Bom ( nBomId IN VARCHAR2 ) IS
4178
 
4179
rowCount NUMBER;
4180
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
4181
nBomIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
4182
 
4183
BEGIN
4184
	/*--------------- Business Rules Here -------------------*/
4185
	IF (nBomId IS NULL) 
4186
	THEN
4187
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBomId= '|| nBomId );
4188
 
4189
	END IF;
4190
 
4191
	-- Check Requirements
4192
	pk_Requirements.Destroy_Bom ( nBomId );
4193
 
4194
	/*-------------------------------------------------------*/
4195
 
4196
 
4197
 
4198
	-- Load Collector
4199
	nBomIdCollector := IN_LIST_NUMBER( nBomId );
4200
 
4201
 
4202
	-- Destroy BASE_ENV
4203
	nIdCollector := NULL;
4204
	SELECT CAST ( MULTISET ( SELECT be.BASE_ENV_ID
4205
	  	   		  		   	   FROM BASE_ENV be
4206
	 						  WHERE be.BOM_ID IN   ( 
4207
								  	  		  	      SELECT * 
4208
													  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
4209
												 	) 
4210
						    ) AS DEPMGR_NUMBER_TAB_t ) INTO nIdCollector FROM DUAL;
4211
 
4212
	Destroy_BaseEnv ( nIdCollector );
4213
 
4214
 
4215
 
4216
	-- Destroy NETWORK_NODES
4217
	nIdCollector := NULL;
4218
	SELECT CAST ( MULTISET ( SELECT bc.NODE_ID
4219
	  	   		  		   	   FROM BOM_CONTENTS bc
4220
	 						  WHERE bc.BOM_ID IN   ( 
4221
								  	  		  	      SELECT * 
4222
													  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
4223
												 	) 
4224
						    ) AS DEPMGR_NUMBER_TAB_t ) INTO nIdCollector FROM DUAL;
4225
 
4226
	pk_Network_Node.Destroy_Node ( nIdCollector, 0 );
4227
 
4228
 
4229
 
4230
	-- Destroy HARDWARE
4231
	nIdCollector := NULL;
4232
	SELECT CAST ( MULTISET ( SELECT hr.HARDWARE_NAME_ID
4233
	  	   		  		   	   FROM HARDWARE hr
4234
	 						  WHERE hr.BOM_ID IN   ( 
4235
								  	  		  	      SELECT * 
4236
													  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
4237
												 	)
4238
							) AS DEPMGR_NUMBER_TAB_t ) INTO nIdCollector FROM DUAL;
4239
 
4240
	Destroy_Hardware ( nIdCollector );
4241
 
4242
 
4243
 
4244
	-- Destroy BOM_STATE
4245
	DELETE 
4246
	  FROM BOM_STATE bs
4247
	 WHERE bs.BOM_ID IN ( 
4248
	  	  		  	      SELECT * 
4249
						  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
4250
					 	);
4251
 
4252
 
4253
	-- Destroy BOM_TRAIL
4254
	DELETE 
4255
	  FROM BOM_TRAIL bt
4256
	 WHERE bt.BOM_ID IN ( 
4257
	  	  		  	      SELECT * 
4258
						  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
4259
					 	); 
4260
 
4261
 
4262
	---- Finnaly Destroy BOM ----
4263
	DELETE 
4264
	  FROM BOMS bo
4265
	 WHERE bo.BOM_ID IN ( 
4266
	  	  		  	      SELECT * 
4267
						  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
4268
					 	);
4269
 
4270
 
4271
 
4272
END	Destroy_Bom;
4273
/*--------------------------------------------------------------------------------------------------*/
4274
PROCEDURE Destroy_BaseEnv ( nBaseEndIdCollector IN DEPMGR_NUMBER_TAB_t ) IS
4275
 
4276
 
4277
BEGIN
4278
	/*--------------- Business Rules Here -------------------*/
4279
	/*-------------------------------------------------------*/
4280
 
4281
	-- Destroy BASE_ENV_CONTENTS
4282
	DELETE
4283
	  FROM BASE_ENV_CONTENTS bec
4284
	 WHERE bec.BASE_ENV_ID IN ( SELECT * FROM TABLE ( CAST ( nBaseEndIdCollector AS DEPMGR_NUMBER_TAB_t ) ) );
4285
 
4286
	-- Destroy OS_BASE_ENV
4287
	DELETE
4288
	  FROM OS_BASE_ENV obe
4289
	 WHERE obe.BASE_ENV_ID IN ( SELECT * FROM TABLE ( CAST ( nBaseEndIdCollector AS DEPMGR_NUMBER_TAB_t ) ) );
4290
 
4291
	 -- Destroy BASE_ENV
4292
	DELETE
4293
	  FROM BASE_ENV be
4294
	 WHERE be.BASE_ENV_ID IN ( SELECT * FROM TABLE ( CAST ( nBaseEndIdCollector AS DEPMGR_NUMBER_TAB_t ) ) );
4295
 
4296
 
4297
END	Destroy_BaseEnv;
4298
/*--------------------------------------------------------------------------------------------------*/
4299
PROCEDURE Destroy_Hardware ( nHardwareNameIdCollector IN DEPMGR_NUMBER_TAB_t ) IS
4300
 
4301
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
4302
 
4303
BEGIN
4304
	/*--------------- Business Rules Here -------------------*/
4305
	/*-------------------------------------------------------*/
4306
 
4307
    -- Destroy NETWORK_NODES
4308
    nIdCollector := NULL;
4309
    SELECT CAST ( MULTISET ( SELECT hn.NODE_ID
4310
	  	   		  		   	   FROM HARDWARE_NODE hn
4311
	 						  WHERE hn.HARDWARE_NAME_ID IN ( SELECT * FROM TABLE ( CAST ( nHardwareNameIdCollector AS DEPMGR_NUMBER_TAB_t ) ) ) 
4312
						   ) AS DEPMGR_NUMBER_TAB_t ) INTO nIdCollector FROM DUAL;
4313
 
4314
    pk_Network_Node.Destroy_Node ( nIdCollector, 0 );
4315
 
4316
 
4317
	-- Finnaly Destroy HARDWARE
4318
	DELETE
4319
	  FROM HARDWARE hd
4320
	 WHERE hd.HARDWARE_NAME_ID IN ( SELECT * FROM TABLE ( CAST ( nHardwareNameIdCollector AS DEPMGR_NUMBER_TAB_t ) ) );
4321
 
4322
END	Destroy_Hardware;
4323
/*--------------------------------------------------------------------------------------------------*/
4324
PROCEDURE Get_Next_Version (nFromBomId IN BOMS.BOM_ID%TYPE,
4325
							nToBranchId IN BOMS.BRANCH_ID%TYPE,
4326
							sNextVersion OUT BOMS.BOM_VERSION%TYPE,
4327
							sNextLifeCycle OUT BOMS.BOM_LIFECYCLE%TYPE,
4328
							nParentBomId IN OUT BOMS.PARENT_BOM_ID%TYPE,
4329
							nBomNameId IN BOMS.BOM_NAME_ID%TYPE ) IS
4330
 
4331
IsNotHead NUMBER;
4332
FromBranch NUMBER;
4333
LastRootVersion NUMBER;
4334
LastVersion BOMS.BOM_VERSION%TYPE;
4335
 
4336
CURSOR curBoms IS
4337
	SELECT Max ( CAST ( bo.BOM_VERSION AS NUMBER  ) ) AS LAST_VERSION
4338
		  FROM BOMS bo,
4339
		  	   BRANCHES br
4340
		 WHERE bo.BRANCH_ID = br.BRANCH_ID
4341
		   AND br.PROJ_ID IN ( SELECT br.PROJ_ID  FROM BRANCHES br  WHERE br.BRANCH_ID = nToBranchId )	
4342
		   AND bo.BOM_NAME_ID = nBomNameId;
4343
recBoms curBoms%ROWTYPE;
4344
 
4345
 
4346
BEGIN
4347
 
4348
	/*--------------- Business Rules Here -------------------*/
4349
	/*-------------------------------------------------------*/
4350
	-- Get Last Root Version
4351
 
4352
	OPEN curBoms;
4353
	FETCH curBoms INTO recBoms;	
4354
	LastRootVersion := recBoms.LAST_VERSION;
4355
	CLOSE curBoms;
4356
 
4357
 
4358
 
4359
 
4360
 
4361
	IF nFromBomId IS NULL THEN
4362
		/* Blank BOM Required */
4363
 
4364
		-- Get Next Available Version
4365
		sNextVersion := '1';
4366
		sNextLifeCycle := '0';
4367
		IF LastRootVersion IS NOT NULL THEN
4368
			sNextVersion := CAST( LastRootVersion + 1 AS VARCHAR2 );
4369
		END IF;
4370
 
4371
 
4372
 
4373
	ELSE
4374
		/* Create Bom From ... */
4375
 
4376
		-- Check if BOM is comming from different Iteration
4377
		SELECT bo.BRANCH_ID INTO FromBranch
4378
		  FROM BOMS bo
4379
		 WHERE bo.BOM_ID = nFromBomId; 
4380
 
4381
 
4382
 
4383
		IF FromBranch = nToBranchId THEN
4384
			/* Bom is comming from same Iteration */
4385
			/* i.e. Continue on same version stream. */
4386
 
4387
			-- Set parent_id
4388
			nParentBomId := nFromBomId;
4389
 
4390
 
4391
			-- Get Last Version 
4392
			SELECT bo.BOM_VERSION INTO LastVersion
4393
			  FROM BOMS bo
4394
			 WHERE bo.BOM_ID = nFromBomId;
4395
 
4396
 
4397
			-- Check if Bom is Head (i.e. Last on its branch )
4398
			SELECT COUNT(*) INTO IsNotHead
4399
			  FROM BOMS bo,
4400
			  	   BRANCHES br
4401
			 WHERE bo.BRANCH_ID = br.BRANCH_ID
4402
			   AND br.PROJ_ID IN ( SELECT br.PROJ_ID FROM BRANCHES br WHERE br.BRANCH_ID = FromBranch )
4403
			   AND bo.PARENT_BOM_ID = nFromBomId
4404
			   AND bo.BOM_VERSION = LastVersion
4405
			   AND bo.BOM_ID != bo.PARENT_BOM_ID;
4406
 
4407
 
4408
			IF IsNotHead = 0 THEN
4409
				/* Bom IS Head (i.e. Last on its branch ) */
4410
 
4411
				-- Get Bom Version and LifeCycle
4412
				SELECT bo.BOM_VERSION, bo.BOM_LIFECYCLE INTO sNextVersion, sNextLifeCycle
4413
				  FROM BOMS bo
4414
				 WHERE bo.BOM_ID = nFromBomId;
4415
 
4416
				-- Increase Lifecycle
4417
				sNextLifeCycle := CAST (  ( CAST( sNextLifeCycle AS NUMBER ) + 1 )  AS VARCHAR2 );
4418
 
4419
 
4420
			ELSE
4421
				/* Bom IS NOT Head */
4422
 
4423
				-- Get Bom Version and LifeCycle
4424
				SELECT bo.BOM_VERSION, bo.BOM_LIFECYCLE INTO sNextVersion, sNextLifeCycle
4425
				  FROM BOMS bo
4426
				 WHERE bo.BOM_ID = nFromBomId;
4427
 
4428
				-- Branch Bom Version 
4429
				sNextVersion := sNextVersion ||'.'|| sNextLifeCycle;
4430
 
4431
				-- Reset Lifecycle to 1
4432
				sNextLifeCycle := '1';
4433
 
4434
			END IF;	
4435
 
4436
 
4437
		ELSE
4438
			/* BOM is comming from Different Iteration */
4439
			/* i.e. Start new version stream. */
4440
 
4441
			-- Get Next Available Version
4442
			sNextVersion := '1';
4443
			sNextLifeCycle := '0';
4444
			IF LastRootVersion IS NOT NULL THEN
4445
				sNextVersion := CAST( LastRootVersion + 1 AS VARCHAR2 );
4446
			END IF;
4447
 
4448
		END IF;
4449
 
4450
 
4451
	END IF;
4452
 
4453
 
4454
END	Get_Next_Version;
4455
/*--------------------------------------------------------------------------------------------------*/
4534 dpurdie 4456
PROCEDURE Release_To ( nBomId    IN BOM_STATE.BOM_ID%TYPE,
4457
					             nUserId   IN BOM_STATE.USER_ID%TYPE,
4458
					             nToState  IN BOM_STATE.STATE_ID%TYPE DEFAULT NULL,
4459
					             sComments IN BOM_TRAIL.TRAIL_COMMENTS%TYPE DEFAULT NULL ) IS
3926 dpurdie 4460
 
4461
rowCount NUMBER;	
4462
IsOfficial BOMS.IS_READONLY%TYPE;					 
4463
StateId BOM_STATE.STATE_ID%TYPE;
4464
StateName STATES.STATE_NAME%TYPE;
4465
 
4466
BEGIN
4467
	/*--------------- Business Rules Here -------------------*/
4468
	-- Check if already released
4469
	SELECT Count(*) INTO rowCount
4470
	  FROM BOM_STATE bs
4471
	 WHERE bs.BOM_ID = nBomId
4472
	   AND bs.STATE_ID = nToState;
4473
 
4474
	IF rowCount > 0 THEN
4475
	   RAISE_APPLICATION_ERROR (-20000, 'This BOM is already release' );
4476
	END IF;
4477
 
4478
 
4479
	-- Check if Bom is official
4480
	SELECT bo.IS_READONLY INTO IsOfficial
4481
	  FROM BOMS bo
4482
	 WHERE bo.BOM_ID = nBomId;
4483
 
4484
	IF (IsOfficial != 'Y') AND (nToState IS NOT NULL) THEN
4485
		RAISE_APPLICATION_ERROR (-20000, 'BOM must be locked first' );
4486
	END IF;
4487
	/*-------------------------------------------------------*/
4488
 
4489
 
4490
	-- Get State --
4491
	StateId := nToState;
4492
	IF StateId IS NULL THEN
4534 dpurdie 4493
    BEGIN
3926 dpurdie 4494
		-- If state_id is null it is considered as state_type_enum = 'BOM Creator'
4495
		SELECT st.STATE_ID INTO StateId
4496
		  FROM BOMS bo,
4497
		  	   BRANCHES br,
4498
			   DM_PROJECTS proj,
4499
			   STATES st
4500
		 WHERE bo.BRANCH_ID = br.BRANCH_ID
4501
		   AND br.PROJ_ID = proj.PROJ_ID
4502
		   AND st.PROJ_ID = proj.PROJ_ID
4503
		   AND bo.BOM_ID = nBomId
4534 dpurdie 4504
		   AND st.STATE_TYPE_ENUM = GET_SYSTEM_VALUE('enumSTATE_TYPE_CREATOR')
4505
       AND rownum = 1
4506
     ORDER BY st.STATE_ID;
4507
     EXCEPTION  WHEN NO_DATA_FOUND THEN 
4508
       RAISE_APPLICATION_ERROR (-20000, 'Cannot find BOM Creator in project. Project is misconfigured! nBomId= '|| nBomId  );
4509
   END;
4510
 
3926 dpurdie 4511
	END IF;
4512
 
4513
 
4514
	-- Add Bom to State --
4515
	INSERT INTO BOM_STATE (BOM_ID, STATE_ID, DATE_STAMP, IS_DISPLAYED, USER_ID )
4516
	VALUES( nBomId,
4517
			StateId,
4518
			GET_DATE(),
4519
			'Y',
4520
			nUserId );
4521
 
4522
 
4523
 
4524
	-- Auto-Hide Bom
4525
	pk_State.Auto_Hide ( StateId, nBomId, GET_SYSTEM_VALUE('enumEVENT_ON_RELEASE_TO') );
4526
 
4527
 
4528
	/* Log BOM_TRAIL */
4529
	-- Get State Name --
4530
	SELECT st.STATE_NAME INTO StateName
4531
	  FROM STATES st
4532
	 WHERE st.STATE_ID = StateId;
4533
 
4534
	-- Log Action 
4535
	pk_Bom.Log_Bom_Trail ( nBomId, 'RELEASED TO: '|| StateName, nUserId, sComments );
4536
 
4537
 
4538
END	Release_To;
4539
/*--------------------------------------------------------------------------------------------------*/
4540
PROCEDURE Accept_Reject_Comments ( nBomId IN BOMS.BOM_ID%TYPE,
4541
		  						   nRejectSeq IN REJECTION_TRAIL.REJECT_SEQ%TYPE,
4542
						  	   	   sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL,
4543
						       	   nUserId IN REJECTION_TRAIL.USER_ID%TYPE ) IS
4544
 
4545
IsRejected REJECTION_TRAIL.IS_REJECTED%TYPE;
4546
 
4547
BEGIN
4548
	/*--------------- Business Rules Here -------------------*/
4549
	IF (nBomId IS NULL)
4550
	THEN
4551
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBomId= '|| nBomId  );
4552
	END IF;
4553
	/*-------------------------------------------------------*/
4554
 
4555
	IF nRejectSeq IS NULL THEN
4556
		/* CREATE New Note */
4557
 
4558
		-- Get last IsRejected state
4559
		SELECT rt.IS_REJECTED INTO IsRejected
4560
		  FROM REJECTION_TRAIL rt
4561
		 WHERE rt.ENTITY_ID = nBomId
4562
		   AND rt.ENUM_ENTITY_TYPE = GET_SYSTEM_VALUE('enumENTITY_TYPE_BOM')
4563
		   AND rt.REJECT_SEQ =
4564
		   (
4565
		   	SELECT MAX(REJECT_SEQ) FROM
4566
			REJECTION_TRAIL rt
4567
		 	WHERE rt.ENTITY_ID = nBomId
4568
		   	AND rt.ENUM_ENTITY_TYPE = GET_SYSTEM_VALUE('enumENTITY_TYPE_BOM')
4569
 
4570
		   );
4571
 
4572
 
4573
		/* Log Rejection Trail */
4574
		pk_Utils.Log_Rejection_Trail ( GET_SYSTEM_VALUE('enumENTITY_TYPE_BOM'), nBomId, IsRejected, nUserId, sComments );
4575
 
4576
	ELSE
4577
		/* EDIT Note */
4578
		UPDATE REJECTION_TRAIL rt SET
4579
			rt.COMMENTS = sComments,
4580
			rt.USER_ID = nUserId,
4581
			rt.DATE_TIME_STAMP = GET_DATETIME()
4582
		WHERE rt.ENUM_ENTITY_TYPE = GET_SYSTEM_VALUE('enumENTITY_TYPE_BOM')
4583
		  AND rt.ENTITY_ID = nBomId
4584
		  AND rt.REJECT_SEQ = nRejectSeq;
4585
 
4586
 
4587
	END IF;
4588
 
4589
 
4590
END	Accept_Reject_Comments;
4591
/*--------------------------------------------------------------------------------------------------*/
4592
PROCEDURE Log_Bom_Trail ( nBomId IN BOM_TRAIL.BOM_ID%TYPE,
4593
						  sAction IN BOM_TRAIL.TRAIL_ACTION%TYPE,
4594
						  nUserId IN BOM_TRAIL.USER_ID%TYPE,
4595
						  sComments IN BOM_TRAIL.TRAIL_COMMENTS%TYPE DEFAULT NULL  ) IS
4596
 
4597
 
4598
BEGIN
4599
	/*--------------- Business Rules Here -------------------*/
4600
	IF (nBomId IS NULL) OR (sAction IS NULL) OR (nUserId IS NULL)
4601
	THEN
4602
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBomId= '|| nBomId ||', sAction='|| sAction ||', nUserId='|| nUserId );
4603
	END IF;
4604
	/*-------------------------------------------------------*/
4605
 
4606
	INSERT INTO BOM_TRAIL ( BOM_ID, TRAIL_ACTION, TRAIL_COMMENTS, USER_ID, DATE_TIME_STAMP )
4607
	VALUES ( nBomId, sAction, sComments, nUserId, GET_DATETIME() );	
4608
 
4609
END	Log_Bom_Trail;
4610
/*--------------------------------------------------------------------------------------------------*/
4611
PROCEDURE Log_Node_Trail ( nNodeId IN NODE_TRAIL.NODE_ID%TYPE,
4612
						  sAction IN NODE_TRAIL.TRAIL_ACTION%TYPE,
4613
						  nUserId IN NODE_TRAIL.USER_ID%TYPE  ) IS
4614
 
4615
 
4616
BEGIN
4617
	/*--------------- Business Rules Here -------------------*/
4618
	IF (nNodeId IS NULL) OR (sAction IS NULL) OR (nUserId IS NULL)
4619
	THEN
4620
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nNodeId= '|| nNodeId ||', sAction='|| sAction ||', nUserId='|| nUserId );
4621
	END IF;
4622
	/*-------------------------------------------------------*/
4623
 
4624
	INSERT INTO NODE_TRAIL ( NODE_ID, TRAIL_ACTION, USER_ID, DATE_TIME_STAMP )
4625
	VALUES ( nNodeId, sAction, nUserId, GET_DATETIME() );	
4626
 
4627
END	Log_Node_Trail;
4628
/*--------------------------------------------------------------------------------------------------*/
4629
PROCEDURE Log_Os_Trail ( nOsId IN OS_TRAIL.OS_ID%TYPE,
4630
						  sAction IN OS_TRAIL.TRAIL_ACTION%TYPE,
4631
						  nUserId IN OS_TRAIL.USER_ID%TYPE  ) IS
4632
 
4633
 
4634
BEGIN
4635
	/*--------------- Business Rules Here -------------------*/
4636
	IF (nOsId IS NULL) OR (sAction IS NULL) OR (nUserId IS NULL)
4637
	THEN
4638
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nOsId= '|| nOsId ||', sAction='|| sAction ||', nUserId='|| nUserId );
4639
	END IF;
4640
	/*-------------------------------------------------------*/
4641
 
4642
	INSERT INTO OS_TRAIL ( OS_ID, TRAIL_ACTION, USER_ID, DATE_TIME_STAMP )
4643
	VALUES ( nOsId, sAction, nUserId, GET_DATETIME() );	
4644
 
4645
END	Log_Os_Trail;
4646
/*--------------------------------------------------------------------------------------------------*/
4647
 
4648
END pk_Bom;
4649
 
4650
/
4651
--------------------------------------------------------
4652
--  DDL for Package Body PK_NETWORK_NODE
4653
--------------------------------------------------------
4654
 
5924 dpurdie 4655
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_NETWORK_NODE" 
3926 dpurdie 4656
IS
4657
/* ---------------------------------------------------------------------------
4658
    Version: 1.0.0
4659
   --------------------------------------------------------------------------- */
4660
 
4661
/*--------------------------------------------------------------------------------------------------*/
4662
PROCEDURE Add_Node ( sNodeName IN NETWORK_NODES.NODE_NAME%TYPE,
4663
  		   	   	     nNodeTypeId IN NETWORK_NODES.NODE_TYPE_ID%TYPE,
4664
					 sNodeComments IN NETWORK_NODES.NODE_COMMENTS%TYPE,
4665
					 nBomId IN BOM_CONTENTS.BOM_ID%TYPE,
4666
					 nUserId IN NUMBER,
4667
					 sNotXML IN NETWORK_NODES.NOT_XML%TYPE ) IS
4668
 
4669
NodeID NUMBER;
4670
 
4671
CURSOR nn_cur IS -- Check Node Name Duplicates
4672
		SELECT bc.node_id
4673
		  FROM BOM_CONTENTS bc,
4674
		  	   NETWORK_NODES nn
4675
		 WHERE bc.NODE_ID = nn.NODE_ID
4676
		   AND bc.BOM_ID = nBomId 
4677
		   AND UPPER( nn.NODE_NAME ) = UPPER( sNodeName );
4678
nn_rec nn_cur%ROWTYPE;
4679
 
4680
DUPLICATE_NODE_NAME EXCEPTION;
4681
 
4682
BEGIN
4683
	/*--------------- Business Rules Here -------------------*/
4684
	OPEN nn_cur;
4685
    FETCH nn_cur INTO nn_rec;
4686
 
4687
    IF nn_cur%FOUND
4688
    THEN
4689
		RAISE DUPLICATE_NODE_NAME;
4690
	END IF;
4691
 
4692
	CLOSE nn_cur;
4693
	/*-------------------------------------------------------*/
4694
 
4695
 
4696
	-- Get node_id
4697
	SELECT SEQ_NODE_ID.NEXTVAL INTO NodeID FROM DUAL;
4698
 
4699
 
4700
	-- Insert new Network Node			  
4701
	INSERT INTO NETWORK_NODES ( NODE_ID, NODE_TYPE_ID, NODE_NAME, NODE_COMMENTS, NOT_XML )
4702
	VALUES (
4703
			NodeID,
4704
			nNodeTypeId,
4705
			sNodeName,
4706
			sNodeComments,
4707
			sNotXML
4708
			);
4709
 
4710
 
4711
	-- Link Node with the BOM
4712
	INSERT INTO BOM_CONTENTS ( BOM_ID, NODE_ID )
4713
	VALUES (
4714
		    nBomId,
4715
			NodeID
4716
		    );
4717
 
4718
	/* Log BOM_TRAIL */
4719
	pk_Bom.Log_Bom_Trail ( nBomId, 'Added Network Node: '||sNodeName, nUserId );				
4720
 
4721
EXCEPTION
4722
    WHEN DUPLICATE_NODE_NAME
4723
	THEN		
4724
		RAISE_APPLICATION_ERROR (-20000, 'Node Name "'|| sNodeName ||'" is Already Used in this BOM.');
4725
 
4726
END	Add_Node;
4727
/*--------------------------------------------------------------------------------------------------*/
4728
PROCEDURE Update_Node ( nNodeId IN NETWORK_NODES.NODE_ID%TYPE,
4729
						sNodeName IN NETWORK_NODES.NODE_NAME%TYPE,
4730
  		   	   	     	nNodeTypeId IN NETWORK_NODES.NODE_TYPE_ID%TYPE,
4731
					 	sNodeComments IN NETWORK_NODES.NODE_COMMENTS%TYPE,
4732
						nUserId IN NUMBER,
4733
						nLifeCycle IN NUMBER,
4734
						sNotXML IN NETWORK_NODES.NOT_XML%TYPE ) IS
4735
 
4736
BomID NUMBER;
4737
 
4738
CURSOR nn_cur IS -- Check Node Name Duplicates
4739
		SELECT bc.node_id
4740
		  FROM BOM_CONTENTS bc,
4741
		  	   NETWORK_NODES nn
4742
		 WHERE bc.NODE_ID = nn.NODE_ID
4743
		   AND bc.BOM_ID = BomId 
4744
		   AND UPPER( nn.NODE_NAME ) = UPPER( sNodeName )
4745
		   AND nn.NODE_ID != nNodeId;
4746
nn_rec nn_cur%ROWTYPE;
4747
 
4748
DUPLICATE_NODE_NAME EXCEPTION;
4749
 
4750
BEGIN
4751
	/*--------------- Business Rules Here -------------------*/
4752
	-- Check all parameters
4753
	IF (nNodeId IS NULL)  OR  (nNodeTypeId IS NULL) 
4754
	THEN
4755
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nNodeId='|| nNodeId  ||', nNodeTypeId='|| nNodeTypeId  );
4756
 
4757
	END IF;
4758
 
4759
	-- Get bom_id
4760
	SELECT bc.BOM_ID INTO BomId
4761
	  FROM BOM_CONTENTS bc
4762
	 WHERE bc.NODE_ID = nNodeId; 
4763
 
4764
	-- Check for duplicate names
4765
	OPEN nn_cur;
4766
    FETCH nn_cur INTO nn_rec;
4767
 
4768
    IF nn_cur%FOUND
4769
    THEN
4770
		RAISE DUPLICATE_NODE_NAME;
4771
	END IF;
4772
 
4773
	CLOSE nn_cur;
4774
	/*-------------------------------------------------------*/
4775
 
4776
	-- Update Network Node Details
4777
	UPDATE NETWORK_NODES nn SET
4778
		nn.NODE_NAME = sNodeName,
4779
		nn.NODE_COMMENTS = sNodeComments,
4780
		nn.NODE_TYPE_ID = nNodeTypeId,
4781
		nn.NODE_LIFE_CYCLE = nLifeCycle,
4782
		nn.NOT_XML = sNotXML
4783
	 WHERE nn.NODE_ID = nNodeId;
4784
 
4785
 	/* Log BOM_TRAIL */
4786
	pk_Bom.Log_Bom_Trail ( BomID, 'Updated Network Node: '||sNodeName, nUserId );
4787
 
4788
 
4789
EXCEPTION
4790
    WHEN DUPLICATE_NODE_NAME
4791
	THEN		
4792
		RAISE_APPLICATION_ERROR (-20000, 'Node Name "'|| sNodeName ||'" is Already Used in this BOM.');
4793
 
4794
END	Update_Node;
4795
/*--------------------------------------------------------------------------------------------------*/
4796
PROCEDURE Remove_Node ( sNodeIdList IN VARCHAR2,
4797
					  	nBomId IN BOM_CONTENTS.BOM_ID%TYPE ) IS
4798
 
4799
 
4800
 
4801
NODE_ID_REQUIRED EXCEPTION;
4802
 
4803
BEGIN
4804
	/*--------------- Business Rules Here -------------------*/
4805
    IF sNodeIdList IS NULL
4806
    THEN
4807
		RAISE NODE_ID_REQUIRED;
4808
	END IF;
4809
	/*-------------------------------------------------------*/
4810
 
4811
 
4812
 
4813
	-- Remove from Bom Contents
4814
	DELETE FROM BOM_CONTENTS
4815
	WHERE bom_id = nBomId
4816
	  AND node_id IN (
4817
		  		  	  SELECT *
4818
   	   		   	      FROM THE ( SELECT CAST( IN_LIST_NUMBER( sNodeIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual )
4819
		  		  	 );
4820
 
4821
 
4822
	-- Remove Network Nodes
4823
	DELETE FROM NETWORK_NODES
4824
	WHERE node_id IN (
4825
		  		  	  SELECT *
4826
   	   		   	      FROM THE ( SELECT CAST( IN_LIST_NUMBER( sNodeIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual )
4827
		  		  	 );
4828
 
4829
 
4830
 
4831
EXCEPTION
4832
    WHEN NODE_ID_REQUIRED
4833
	THEN		
4834
		RAISE_APPLICATION_ERROR (-20000, 'You must select at least one Network Node.');
4835
 
4836
END	Remove_Node;
4837
/*--------------------------------------------------------------------------------------------------*/
4838
PROCEDURE Destroy_Node ( nNodeIdCollection IN DEPMGR_NUMBER_TAB_t, nUserId IN NUMBER ) IS
4839
 
4840
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
4841
NodeName VARCHAR2(4000);
4842
BomId NUMBER;
4843
 
4844
BEGIN
4845
	/*--------------- Business Rules Here -------------------*/
4846
	/*-------------------------------------------------------*/
4847
 
4848
	IF (nNodeIdCollection.COUNT > 0) THEN  
4849
 
4850
	   			--Log Action Trail
4851
		FOR i IN 1..nNodeIdCollection.COUNT
4852
		LOOP
4853
			-- Get bom_id
4854
			SELECT bc.BOM_ID INTO BomId
4855
	  		FROM BOM_CONTENTS bc
4856
			WHERE bc.NODE_ID = nNodeIdCollection(i);	
4857
 
4858
			--Get node_name
4859
			SELECT nn.NODE_NAME INTO NodeName
4860
	  		FROM NETWORK_NODES nn
4861
			WHERE nn.NODE_ID = nNodeIdCollection(i);	
4862
 
4863
			/* Log BOM_TRAIL */
4864
			pk_Bom.Log_Bom_Trail ( BomId, 'Deleted Network Node: '||NodeName, nUserId );
4865
 
4866
		END LOOP;				  
4867
 
4868
		-- Destroy Hardware Node Link
4869
		DELETE 
4870
		  FROM HARDWARE_NODE hn
4871
		 WHERE hn.NODE_ID IN ( SELECT * FROM TABLE ( CAST ( nNodeIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );
4872
 
4873
 
4874
		-- Destroy Node from Bom Contents
4875
		DELETE 
4876
		  FROM BOM_CONTENTS bc
4877
		 WHERE bc.NODE_ID IN ( SELECT * FROM TABLE ( CAST ( nNodeIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );
4878
 
4879
 
4880
		-- Destroy Operation Systems
4881
		nIdCollector := NULL;
4882
		SELECT CAST ( MULTISET ( SELECT os.OS_ID
4883
		  	   		  		   	   FROM OPERATING_SYSTEMS os
4884
		 						  WHERE os.NODE_ID IN ( SELECT * FROM TABLE ( CAST ( nNodeIdCollection AS DEPMGR_NUMBER_TAB_t ) ) )
4885
							    ) AS DEPMGR_NUMBER_TAB_t ) INTO nIdCollector FROM DUAL;
4886
 
4887
		pk_Operating_System.Destroy_Os ( nIdCollector, nUserId );
4888
 
4889
		---- Finnaly destroy Network Node ----
4890
		DELETE
4891
		  FROM NETWORK_NODES nn
4892
		 WHERE nn.NODE_ID IN ( SELECT * FROM TABLE ( CAST ( nNodeIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );		 
4893
 
4894
	END IF; 
4895
 
4896
 
4897
END	Destroy_Node;
4898
/*--------------------------------------------------------------------------------------------------*/
4899
PROCEDURE Destroy_Node ( nNodeIdList IN VARCHAR2, nUserId IN NUMBER ) IS
4900
 
4901
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
4902
 
4903
BEGIN
4904
	/*--------------- Business Rules Here -------------------*/
4905
	/*-------------------------------------------------------*/
4906
	nIdCollector := IN_LIST_NUMBER ( nNodeIdList );
4907
 
4908
	Destroy_Node ( nIdCollector, nUserId);	
4909
 
4910
 
4911
END	Destroy_Node;
4912
/*--------------------------------------------------------------------------------------------------*/
4913
PROCEDURE Sort_Nodes ( sNodeIdOrder IN VARCHAR2,
4914
		  			   nBomId IN BOMS.BOM_ID%TYPE,
4915
					   nUserId IN NUMBER ) IS
4916
 
4917
	nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();						 
4918
	SeqNum NUMBER;
4919
 
4920
BEGIN
4921
	/*--------------- Business Rules Here -------------------*/
4922
	-- Check for parameters
4923
	IF (sNodeIdOrder IS NULL)  OR (nBomId IS NULL) 
4924
	THEN
4925
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nBomId='|| nBomId  ||' sNodeIdOrder='|| sNodeIdOrder  );
4926
	END IF;
4927
	/*-------------------------------------------------------*/
4928
 
4929
	nIdCollector := IN_LIST_NUMBER ( sNodeIdOrder );
4930
 
4931
	-- Set start sequence number
4932
	SeqNum := 1;
4933
 
4934
	FOR i IN 1..nIdCollector.COUNT
4935
	LOOP
4936
 
4937
		-- Update new sequence number
4938
		UPDATE BOM_CONTENTS bc SET
4939
			bc.SEQ_NUM = SeqNum
4940
		 WHERE bc.BOM_ID = nBomId
4941
		   AND bc.NODE_ID = nIdCollector(i);
4942
 
4943
		SeqNum := SeqNum + 1;
4944
 
4945
	END LOOP;
4946
 
4947
 
4948
END	Sort_Nodes;
4949
/*--------------------------------------------------------------------------------------------------*/
4950
END pk_Network_Node;
4951
 
4952
/
4953
--------------------------------------------------------
4954
--  DDL for Package Body PK_OPERATING_SYSTEM
4955
--------------------------------------------------------
4956
 
5924 dpurdie 4957
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_OPERATING_SYSTEM" 
3926 dpurdie 4958
IS
4959
/* ---------------------------------------------------------------------------
4960
    Modified: Rupesh Solanki
4961
	Date: 20/03/2006
4962
   --------------------------------------------------------------------------- */
4963
 
4964
/*--------------------------------------------------------------------------------------------------*/
4965
PROCEDURE Add_Os ( sOsName IN OPERATING_SYSTEMS.OS_NAME%TYPE,
4966
		  		   sOsComments IN OPERATING_SYSTEMS.OS_COMMENTS%TYPE,
4967
				   sNodeSpecFile IN OPERATING_SYSTEMS.NODE_SPEC_FILE%TYPE,
4968
 				   sNotXML IN OPERATING_SYSTEMS.NOT_XML%TYPE,
4969
				   nNodeId IN OPERATING_SYSTEMS.NODE_ID%TYPE,
4970
				   nBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
4971
				   nBosId IN BASE_ENV.BOS_ID%TYPE DEFAULT NULL,
4972
				   nUserId IN NUMBER ) IS
4973
 
4974
OsID NUMBER;
4975
BosId NUMBER;
4976
BaseEnvId NUMBER;
4977
BomId NUMBER;
4978
 
4979
CURSOR curOs IS -- Check Node Name Duplicates
4980
		SELECT os.OS_ID
4981
		  FROM OPERATING_SYSTEMS os
4982
		 WHERE os.NODE_ID = nNodeId
4983
		   AND UPPER(os.OS_NAME) = UPPER(sOsName);
4984
recOs curOs%ROWTYPE;
4985
 
4986
DUPLICATE_OS_NAME EXCEPTION;
4987
 
4988
BEGIN
4989
	/*--------------- Business Rules Here -------------------*/
4990
	-- Check for duplicate names
4991
	OPEN curOs;
4992
    FETCH curOs INTO recOs;
4993
 
4994
    IF curOs%FOUND
4995
    THEN
4996
		RAISE DUPLICATE_OS_NAME;
4997
	END IF;
4998
 
4999
	CLOSE curOs;
5000
	/*-------------------------------------------------------*/
5001
 
5002
	-- Get os_id
5003
	SELECT SEQ_OS_ID.NEXTVAL INTO OsID FROM DUAL;
5004
 
5005
	-- Insert new OS
5006
	INSERT INTO OPERATING_SYSTEMS ( OS_ID, OS_NAME, NODE_ID, OS_COMMENTS, NODE_SPEC_FILE, NOT_XML ) 
5007
	VALUES ( OsID, sOsName, nNodeId, sOsComments, sNodeSpecFile, sNotXML  );
5008
 
5009
 
5010
 
5011
	/* Set up Base Configuration */
5012
	IF nBaseEnvName IS NOT NULL THEN
5013
 
5014
		-- Get bom_id
5015
		SELECT bc.BOM_ID INTO BomId
5016
		  FROM BOM_CONTENTS bc
5017
		 WHERE bc.NODE_ID = nNodeId;
5018
 
5019
 
5020
		-- Set bos _id to default
5021
		BosId := 5;		-- This is Generic OS in BOS_TYPES table
5022
		IF nBosId IS NOT NULL THEN
5023
			BosId := nBosId;
5024
		END IF;
5025
 
5026
 
5027
		-- Get base_env_id
5028
		BaseEnvId := pk_Base_Env.Get_Base_Env_Id ( nBaseEnvName, BomId );
5029
 
5030
 
5031
		-- Create Base Env if Required
5032
		IF BaseEnvId IS NULL THEN
5033
 
5034
			pk_Base_Env.Add_Base_Env ( nBaseEnvName, BosId, BomId, OsID, nUserId );
5035
 
5036
			BaseEnvId := pk_Base_Env.Get_Base_Env_Id ( nBaseEnvName, BomId );
5037
 
5038
		END IF;
5039
 
5040
		-- Finally assign this  base env to OS
5041
		INSERT INTO OS_BASE_ENV ( OS_ID, BASE_ENV_ID )
5042
		VALUES ( OsID, BaseEnvId );
5043
 
5044
	END IF;
5045
 
5046
 
5047
	/* Log BOM_TRAIL */
5048
	pk_Bom.Log_Node_Trail ( nNodeId, 'Added Operating System: '||sOsName, nUserId );	
5049
 
5050
 
5051
	EXCEPTION
5052
    WHEN DUPLICATE_OS_NAME
5053
	THEN		
5054
		RAISE_APPLICATION_ERROR (-20000, 'OS Name "'|| sOsName ||'" is Already Used in this Network Node.');
5055
 
5056
END	Add_Os;
5057
/*--------------------------------------------------------------------------------------------------*/
5058
PROCEDURE Update_Os ( nOsId IN OPERATING_SYSTEMS.OS_ID%TYPE,
5059
					  sOsName IN OPERATING_SYSTEMS.OS_NAME%TYPE,
5060
		  		   	  sOsComments IN OPERATING_SYSTEMS.OS_COMMENTS%TYPE,
5061
				  	  nBaseEnvName IN BASE_ENV.BASE_ENV_NAME%TYPE,
5062
					  sNodeSpecFile IN OPERATING_SYSTEMS.NODE_SPEC_FILE%TYPE,
5063
					  sNotXML IN OPERATING_SYSTEMS.NOT_XML%TYPE,
5064
					  nUserId IN NUMBER  ) IS
5065
 
5066
BomId NUMBER;
5067
BosId NUMBER;
5068
BaseEnvId NUMBER;
5069
NodeId NUMBER;
5070
 
5071
CURSOR curOs IS
5072
		SELECT os.OS_ID
5073
		  FROM OPERATING_SYSTEMS os
5074
		 WHERE os.NODE_ID = NodeId
5075
		   AND UPPER(os.OS_NAME) = UPPER(sOsName)
5076
		   AND os.OS_ID != nOsId;
5077
recOs curOs%ROWTYPE;
5078
 
5079
DUPLICATE_OS_NAME EXCEPTION;
5080
 
5081
BEGIN
5082
	/*--------------- Business Rules Here -------------------*/
5083
	-- Check for parameters
5084
	IF (nOsId IS NULL) 
5085
	THEN
5086
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nOsId='|| nOsId   );
5087
 
5088
	END IF;
5089
 
5090
 
5091
	-- Get node_id
5092
	SELECT os.NODE_ID INTO NodeId
5093
	  FROM OPERATING_SYSTEMS os
5094
	 WHERE os.OS_ID = nOsId;
5095
 
5096
 
5097
	-- Check for duplicate names
5098
	OPEN curOs;
5099
    FETCH curOs INTO recOs;
5100
 
5101
    IF curOs%FOUND
5102
    THEN
5103
		RAISE DUPLICATE_OS_NAME;
5104
	END IF;
5105
 
5106
	CLOSE curOs;
5107
	/*-------------------------------------------------------*/
5108
 
5109
	-- Delete current Base Env
5110
	DELETE
5111
	  FROM OS_BASE_ENV obe
5112
	 WHERE obe.OS_ID = nOsId;
5113
 
5114
 
5115
	/* Set up Base Configuration */
5116
	IF nBaseEnvName IS NOT NULL THEN
5117
 
5118
		-- Get bom_id
5119
		SELECT bc.BOM_ID INTO BomId
5120
		  FROM BOM_CONTENTS bc
5121
		 WHERE bc.NODE_ID = NodeId;
5122
 
5123
 
5124
		-- Get base_env_id
5125
		BaseEnvId := pk_Base_Env.Get_Base_Env_Id ( nBaseEnvName, BomId );
5126
 
5127
 
5128
		-- Set bos _id to default
5129
		BosId := 5;		-- This is Generic OS in BOS_TYPES table
5130
 
5131
 
5132
		-- Create Base Env if Required
5133
		IF BaseEnvId IS NULL THEN
5134
 
5135
			pk_Base_Env.Add_Base_Env ( nBaseEnvName, BosId, BomId, nOsId, nUserId );
5136
 
5137
			BaseEnvId := pk_Base_Env.Get_Base_Env_Id ( nBaseEnvName, BomId );
5138
 
5139
		ELSE
5140
			-- Get bos_id
5141
			SELECT be.BOS_ID INTO BosId
5142
			  FROM BASE_ENV be
5143
			 WHERE be.BASE_ENV_ID = BaseEnvId;
5144
 
5145
		END IF;
5146
 
5147
 
5148
		-- Finally assign this  base env to OS
5149
		INSERT INTO OS_BASE_ENV ( OS_ID, BASE_ENV_ID )
5150
		VALUES ( nOsId, BaseEnvId );
5151
 
5152
	END IF;
5153
 
5154
 
5155
 
5156
	-- Update Os Details
5157
	UPDATE OPERATING_SYSTEMS os SET
5158
		os.OS_NAME = sOsName,
5159
		os.OS_COMMENTS = sOsComments,
5160
		os.NODE_SPEC_FILE = sNodeSpecFile,
5161
		os.NOT_XML = sNotXML
5162
	 WHERE os.OS_ID = nOsId;
5163
 
5164
	/* Log BOM_TRAIL */
5165
	pk_Bom.Log_Node_Trail ( NodeId, 'Updated Operating System: '||sOsName, nUserId );		 
5166
 
5167
 
5168
	EXCEPTION
5169
    WHEN DUPLICATE_OS_NAME
5170
	THEN		
5171
		RAISE_APPLICATION_ERROR (-20000, 'OS Name "'|| sOsName ||'" is Already Used in this Network Node.');
5172
 
5173
END	Update_Os;
5174
/*--------------------------------------------------------------------------------------------------*/
5175
PROCEDURE Add_Product_Wrap ( nPkgId IN NUMBER,
5176
		  				   	 sProdVersion IN VARCHAR2,
5177
							 nOsId IN OS_CONTENTS.OS_ID%TYPE,
5178
							 nUserId IN NUMBER,
5179
							 sComments IN VARCHAR2 DEFAULT NULL ) IS
5180
 
5181
ProdId PACKAGE_VERSIONS.PV_ID%TYPE;
5182
ProdName PACKAGES.PKG_NAME%TYPE;
5183
 
5184
CURSOR prod_cur IS
5185
	SELECT osc.PROD_ID
5186
	  FROM OS_CONTENTS osc
5187
	 WHERE osc.PROD_ID = ProdId
5188
	   AND osc.OS_ID = nOsId;
5189
prod_rec prod_cur%ROWTYPE;
5190
 
5191
BEGIN
5192
	/*--------------- Business Rules Here -------------------*/                             
5193
	IF (NOT nPkgId IS NULL) AND (sProdVersion IS NULL) AND (NOT nOsId IS NULL) AND (NOT nUserId IS NULL) THEN
5194
	   RAISE_APPLICATION_ERROR (-20000, 'Please provide Product Version.' );
5195
 
5196
	ELSIF (nPkgId IS NULL) OR (sProdVersion IS NULL) OR (nOsId IS NULL) OR (nUserId IS NULL) THEN
5197
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nPkgId= '|| nPkgId ||', sProdVersion='|| sProdVersion ||', nOsId='|| nOsId ||', nUserId='|| nUserId );
5198
 
5199
	END IF;
5200
	/*-------------------------------------------------------*/
5201
 
5202
	-- Get Product Name --
5203
	SELECT PKG_NAME INTO ProdName FROM PACKAGES WHERE PKG_ID = nPkgId;
5204
 
5205
 
5206
	-- Create Product Version in Release Manager if Required, and Get Prod_id --
5207
	Seed_Package_Names_Versions ( ProdName, sProdVersion, nUserId, ProdId );
5208
 
5209
 
5210
	-- Add Product To OS --
5211
	OPEN prod_cur;
5212
	FETCH prod_cur INTO prod_rec;
5213
 
5214
	IF prod_cur%NOTFOUND THEN
5215
	   pk_Product.Add_Product ( ProdId, nOsId, nUserId );
5216
 
5217
	   -- Add comments if required
5218
	   IF (NOT sComments IS NULL) THEN
5219
	   		UPDATE OS_CONTENTS osc SET
5220
				osc.PRODUCT_COMMENTS = sComments
5221
			 WHERE osc.OS_ID = nOsId
5222
			   AND osc.PROD_ID = ProdId;
5223
 
5224
	   END IF;
5225
 
5226
 
5227
	END IF;
5228
 
5229
	CLOSE prod_cur;
5230
 
5231
 
5232
END	Add_Product_Wrap;
5233
/*--------------------------------------------------------------------------------------------------*/
5234
PROCEDURE Set_Base_Conf ( nOsId IN OS_BASE_ENV.OS_ID%TYPE,
5235
		  				  nBaseEnvId IN OS_BASE_ENV.BASE_ENV_ID%TYPE ) IS
5236
 
5237
BEGIN
5238
	/*--------------- Business Rules Here -------------------*/
5239
	/*-------------------------------------------------------*/
5240
 
5241
	-- Delete current Base Conf setting
5242
	DELETE FROM OS_BASE_ENV
5243
	WHERE OS_ID = nOsId;
5244
 
5245
	-- Set new Base Conf	
5246
	IF NOT nBaseEnvId IS NULL
5247
	THEN
5248
		INSERT INTO OS_BASE_ENV ( OS_ID, BASE_ENV_ID )
5249
		VALUES ( nOsId, nBaseEnvId );
5250
	END IF;
5251
 
5252
END	Set_Base_Conf;
5253
/*--------------------------------------------------------------------------------------------------*/
5254
PROCEDURE Shift_Product_SeqNum ( nProdId IN OS_CONTENTS.PROD_ID%TYPE,
5255
		  				 	     nOsId IN OS_CONTENTS.OS_ID%TYPE,
5256
						 		 nToSeqNum IN OS_CONTENTS.SEQ_NUM%TYPE ) IS
5257
 
5258
currSeqNum NUMBER;
5259
FromSeqNum NUMBER;
5260
 
5261
BEGIN
5262
	 -- Get Current seq_num
5263
	 SELECT osc.SEQ_NUM INTO currSeqNum
5264
	   FROM OS_CONTENTS osc
5265
	  WHERE osc.OS_ID = nOsId
5266
	    AND osc.PROD_ID = nProdId;
5267
 
5268
 
5269
	 IF currSeqNum > nToSeqNum
5270
	 THEN
5271
 
5272
		FromSeqNum := nToSeqNum;
5273
 
5274
			-- Shift others Up
5275
		UPDATE OS_CONTENTS osc SET
5276
			   osc.SEQ_NUM = osc.SEQ_NUM + 1
5277
		 WHERE osc.OS_ID = nOsId 
5278
		   AND osc.PROD_ID != nProdId
5279
		   AND osc.SEQ_NUM BETWEEN  FromSeqNum  AND  currSeqNum - 1;
5280
 
5281
 
5282
	 ELSIF currSeqNum < nToSeqNum
5283
	 THEN
5284
 
5285
		FromSeqNum := currSeqNum + 1;  
5286
 
5287
		 -- Shift others Down
5288
		UPDATE OS_CONTENTS osc SET
5289
		   	   osc.SEQ_NUM = osc.SEQ_NUM - 1
5290
		 WHERE osc.OS_ID = nOsId 
5291
		   AND osc.PROD_ID != nProdId
5292
		   AND osc.SEQ_NUM BETWEEN  FromSeqNum  AND  nToSeqNum;
5293
 
5294
	 END IF;
5295
 
5296
 
5297
	 -- Move Product to new seq_num
5298
	 UPDATE OS_CONTENTS osc SET
5299
		    osc.SEQ_NUM = nToSeqNum
5300
	  WHERE osc.OS_ID = nOsId 
5301
	    AND osc.PROD_ID = nProdId;
5302
 
5303
 
5304
 
5305
END Shift_Product_SeqNum;
5306
/*--------------------------------------------------------------------------------------------------*/
5307
PROCEDURE Shift_Bulk_Products_SeqNum ( sProdIdList IN VARCHAR2,
5308
		  							   nOsId IN OS_CONTENTS.OS_ID%TYPE,
5309
									   cDirection IN CHAR ) IS
5310
 
5311
MinSeqNum	  NUMBER := 1;									   
5312
FirstSeqNum   NUMBER;
5313
LastSeqNum 	  NUMBER;
5314
MaxSeqNum	  NUMBER;
5315
 
5316
 
5317
CURSOR osc_down_cur IS
5318
	SELECT osc.prod_id, osc.seq_num
5319
	  FROM OS_CONTENTS osc
5320
	 WHERE osc.OS_ID = nOsId
5321
	   AND osc.PROD_ID IN (
5322
						   SELECT *
5323
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
5324
	   	   			   	   )
5325
	ORDER BY osc.seq_num ASC;
5326
osc_down_rec osc_down_cur%ROWTYPE;	
5327
 
5328
CURSOR osc_up_cur IS
5329
	SELECT osc.prod_id, osc.seq_num
5330
	  FROM OS_CONTENTS osc
5331
	 WHERE osc.OS_ID = nOsId
5332
	   AND osc.PROD_ID IN (
5333
						   SELECT *
5334
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
5335
	   	   			   	   )
5336
	ORDER BY osc.seq_num DESC;
5337
osc_up_rec osc_up_cur%ROWTYPE;
5338
 
5339
 
5340
BEGIN
5341
	/*--------------- Business Rules Here -------------------*/
5342
	IF sProdIdList IS NULL
5343
	THEN
5344
		RAISE_APPLICATION_ERROR (-20000, 'Please select one or more Products.');
5345
 
5346
	ELSIF (nOsId IS NULL) OR (cDirection IS NULL)
5347
	THEN
5348
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nOsId= '|| nOsId ||', cDirection='|| cDirection );
5349
 
5350
	END IF;
5351
	/*-------------------------------------------------------*/
5352
 
5353
 
5354
 
5355
	-- Get First seq_num
5356
	SELECT MIN( osc.SEQ_NUM ) INTO FirstSeqNum
5357
	  FROM OS_CONTENTS osc
5358
	 WHERE osc.OS_ID = nOsId
5359
	   AND osc.PROD_ID IN (
5360
						   SELECT *
5361
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
5362
	   	   			   	   );
5363
 
5364
	-- Get Last seq_num
5365
	SELECT MAX( osc.SEQ_NUM ) INTO LastSeqNum
5366
	  FROM OS_CONTENTS osc
5367
	 WHERE osc.OS_ID = nOsId
5368
	   AND osc.PROD_ID IN (
5369
						   SELECT *
5370
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
5371
	   	   			   	   );
5372
 
5373
    -- Get Max seq_num
5374
	SELECT MAX( osc.SEQ_NUM ) INTO MaxSeqNum
5375
	  FROM OS_CONTENTS osc
5376
	 WHERE osc.OS_ID = nOsId;
5377
 
5378
 
5379
 
5380
    IF cDirection = '+'
5381
	THEN
5382
		-- Shift UP
5383
		IF LastSeqNum < MaxSeqNum
5384
		THEN
5385
			/* Can only shift up if maxseqnum is not reached */
5386
			OPEN osc_up_cur;
5387
			FETCH osc_up_cur INTO osc_up_rec;
5388
 
5389
			WHILE osc_up_cur%FOUND
5390
			LOOP
5391
				Shift_Product_SeqNum ( osc_up_rec.PROD_ID, nOsId, osc_up_rec.SEQ_NUM + 1  );
5392
 
5393
				FETCH osc_up_cur INTO osc_up_rec;
5394
			END LOOP;
5395
 
5396
 
5397
			CLOSE osc_up_cur;
5398
 
5399
 
5400
		END IF;
5401
 
5402
 
5403
 
5404
 
5405
	ELSIF cDirection = '-'
5406
	THEN
5407
		-- Shift DOWN
5408
		IF FirstSeqNum > MinSeqNum
5409
		THEN
5410
			/* Can only shift down if minseqnum is not reached */
5411
			OPEN osc_down_cur;
5412
			FETCH osc_down_cur INTO osc_down_rec;
5413
 
5414
			WHILE osc_down_cur%FOUND
5415
			LOOP
5416
				Shift_Product_SeqNum ( osc_down_rec.PROD_ID, nOsId, osc_down_rec.SEQ_NUM - 1  );
5417
 
5418
				FETCH osc_down_cur INTO osc_down_rec;
5419
			END LOOP;
5420
 
5421
			CLOSE osc_down_cur;
5422
 
5423
 
5424
		END IF;
5425
 
5426
 
5427
	END IF;
5428
 
5429
 
5430
END Shift_Bulk_Products_SeqNum;
5431
/*--------------------------------------------------------------------------------------------------*/
5432
PROCEDURE Destroy_Os ( nOsIdCollection IN DEPMGR_NUMBER_TAB_t, nUserId IN NUMBER ) IS
5433
 
5434
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
5435
NodeId NUMBER;
5436
OsName VARCHAR2(4000);
5437
 
5438
BEGIN
5439
	/*--------------- Business Rules Here -------------------*/
5440
	/*-------------------------------------------------------*/
5441
 
5442
	IF (nOsIdCollection.COUNT > 0) THEN   
5443
			--Log Action Trail
5444
		FOR i IN 1..nOsIdCollection.COUNT
5445
		LOOP
5446
			-- Get node_id
5447
			SELECT os.NODE_ID INTO NodeId
5448
	  		FROM OPERATING_SYSTEMS os
5449
			WHERE os.OS_ID = nOsIdCollection(i);	
5450
 
5451
			--Get os_name
5452
			SELECT os.OS_NAME INTO OsName
5453
	  		FROM OPERATING_SYSTEMS os
5454
			WHERE os.OS_ID = nOsIdCollection(i);	
5455
 
5456
			/* Log BOM_TRAIL */
5457
			pk_Bom.Log_Node_Trail ( NodeId, 'Deleted Operating System: '||OsName, nUserId );		 
5458
 
5459
 
5460
 
5461
		END LOOP;
5462
 
5463
		-- Destroy PROCESSES_CONFIG
5464
		DELETE 
5465
		  FROM PROCESSES_CONFIG pc
5466
		 WHERE pc.OS_ID IN ( SELECT * FROM TABLE ( CAST ( nOsIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );
5467
 
5468
 
5469
		-- Destroy OS_CONTENTS
5470
		DELETE 
5471
		  FROM OS_CONTENTS osc
5472
		 WHERE osc.OS_ID IN ( SELECT * FROM TABLE ( CAST ( nOsIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );
5473
 
5474
 
5475
		-- Destroy OS_BASE_ENV
5476
		DELETE 
5477
		  FROM OS_BASE_ENV obe
5478
		 WHERE obe.OS_ID IN ( SELECT * FROM TABLE ( CAST ( nOsIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );
5479
 
5480
 
5481
		-- Destroy HIDE_PRODUCTS
5482
		DELETE 
5483
		  FROM HIDE_PRODUCTS hp
5484
		 WHERE hp.OS_ID IN ( SELECT * FROM TABLE ( CAST ( nOsIdCollection AS DEPMGR_NUMBER_TAB_t ) ) ); 
5485
 
5486
 
5487
		-- Destroy OS_TRAIL
5488
		DELETE
5489
		  FROM OS_TRAIL ot
5490
		 WHERE ot.OS_ID IN ( SELECT * FROM TABLE ( CAST ( nOsIdCollection AS DEPMGR_NUMBER_TAB_t ) ) ); 
5491
 
5492
 
5493
		---- Finnaly destroy Operating System ----
5494
		DELETE
5495
		  FROM OPERATING_SYSTEMS os
5496
		 WHERE os.OS_ID IN ( SELECT * FROM TABLE ( CAST ( nOsIdCollection AS DEPMGR_NUMBER_TAB_t ) ) );
5497
 
5498
 
5499
 
5500
 
5501
	END IF; 
5502
 
5503
 
5504
 
5505
END	Destroy_Os;
5506
/*--------------------------------------------------------------------------------------------------*/
5507
PROCEDURE Destroy_Os ( nOsIdList IN VARCHAR2, nUserId IN NUMBER ) IS
5508
 
5509
nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
5510
 
5511
BEGIN
5512
	/*--------------- Business Rules Here -------------------*/
5513
	IF nOsIdList IS NULL
5514
	THEN
5515
		RAISE_APPLICATION_ERROR (-20000, 'Please select one or more Operating Systems.');
5516
 
5517
	END IF;
5518
	/*-------------------------------------------------------*/
5519
	nIdCollector := IN_LIST_NUMBER ( nOsIdList );
5520
 
5521
	Destroy_Os ( nIdCollector, nUserId );					 
5522
 
5523
END	Destroy_Os;
5524
 
5525
/*-------------------------------------------------------------------------------------------------------*/
5526
  PROCEDURE add_package_process (
5527
      nprocidlist   IN   VARCHAR2,
5528
	  npvid 		IN 	 processes_config.prod_id%TYPE,	  
5529
      nosid         IN   os_contents.os_id%TYPE,
5530
      nuserid       IN   NUMBER
5531
   )
5532
   IS
5533
      processname   VARCHAR2 (4000);
5534
	  PkgName 		VARCHAR2 (4000);
5535
	  nPkgId		NUMBER;
5536
 
5537
	  nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
5538
 
5539
 
5540
 
5541
/*Rupesh Release on 17/05/2006*/
5542
     CURSOR proc_cur
5543
      IS
5544
         SELECT prc.proc_id, prc.proc_name, prc.proc_description, 
5545
		 		prc.run_as, prc.pkg_owner, prc.is_interface
5546
           FROM processes prc
5547
          WHERE prc.proc_id IN (
5548
                   SELECT *
5549
                     FROM THE
5550
                             (SELECT CAST
5551
                                        (in_list_number (nprocidlist) AS DEPMGR_NUMBER_TAB_t
5552
                                        )
5553
                                FROM DUAL
5554
                             ));
5555
 
5556
      proc_rec      proc_cur%ROWTYPE;
5557
   BEGIN
5558
 
5559
   BEGIN
5560
   	 SELECT PKG.PKG_NAME, PKG.PKG_ID INTO PkgName, nPkgId
5561
	 FROM PACKAGE_VERSIONS PV, PACKAGES PKG
5562
	 WHERE PV.PV_ID = npvid
5563
	 AND PKG.PKG_ID = PV.PKG_ID;
5564
	 EXCEPTION
5565
	 WHEN NO_DATA_FOUND THEN
5566
	 	  RAISE_APPLICATION_ERROR (-20000, 'Select the Package Name and Version: ' );
5567
   END;	 
5568
 
5569
 
5570
      OPEN proc_cur;
5571
 
5572
      FETCH proc_cur
5573
       INTO proc_rec;
5574
 
5575
      WHILE proc_cur%FOUND
5576
      LOOP
5577
         INSERT INTO processes_config
5578
                     (proc_id, prod_id, os_id, pkg_health_tag, cmd_interface, pkg_owner, is_interface, proc_description, pkg_id
5579
                     )
5580
              VALUES (proc_rec.proc_id, npvid, nosid, proc_rec.proc_name, proc_rec.run_as, proc_rec.pkg_owner, proc_rec.is_interface, proc_rec.proc_description, nPkgId
5581
                     );
5582
 
5583
         SELECT prc.proc_name
5584
           INTO processname
5585
           FROM processes prc
5586
          WHERE prc.proc_id = proc_rec.proc_id;
5587
 
5588
	-- Log Action --
5589
	pk_Bom.Log_Os_Trail ( nosid,  
5590
						  'Added process with health tag '|| processname ||' for product '|| PkgName,
5591
						  nUserId );
5592
 
5593
         FETCH proc_cur
5594
          INTO proc_rec;
5595
      END LOOP;
5596
   END;
5597
 
5598
/*--------------------------------------------------------------------------------------------------*/
5599
/*-------------------------------------------------------------------------------------------------------*/
5600
  PROCEDURE add_packages_process (
5601
      npvidlist   	IN   VARCHAR2,	  
5602
      nosid         IN   os_contents.os_id%TYPE,
5603
      nuserid       IN   NUMBER
5604
   )
5605
   IS
5606
      processname   VARCHAR2 (4000);
5607
	  PkgName 		VARCHAR2 (4000);
5608
 
5609
	  nIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
5610
 
5611
 
5612
 
5613
/*Rupesh Release on 17/05/2006*/
5614
     CURSOR proc_cur
5615
      IS
5616
         SELECT prc.proc_id, prc.proc_name, prc.proc_description, 
5617
		 		prc.run_as, prc.pkg_owner, prc.is_interface, pp.PV_ID
5618
           FROM processes prc, release_manager.package_processes pp
5619
          WHERE pp.pv_id IN (
5620
                   SELECT *
5621
                     FROM THE
5622
                             (SELECT CAST
5623
                                        (in_list_number (npvidlist) AS DEPMGR_NUMBER_TAB_t
5624
                                        )
5625
                                FROM DUAL
5626
                             ))
5627
			AND	pp.PROC_ID = prc.PROC_ID;
5628
 
5629
      proc_rec      proc_cur%ROWTYPE;
5630
   BEGIN
5631
 
5632
 
5633
 
5634
      OPEN proc_cur;
5635
 
5636
      FETCH proc_cur
5637
       INTO proc_rec;
5638
 
5639
      WHILE proc_cur%FOUND
5640
      LOOP
5641
 
5642
   	 SELECT PKG.PKG_NAME INTO PkgName
5643
	 FROM PACKAGE_VERSIONS PV, PACKAGES PKG
5644
	 WHERE PV.PV_ID = proc_rec.pv_id
5645
	 AND PKG.PKG_ID = PV.PKG_ID;	  
5646
 
5647
         INSERT INTO processes_config
5648
                     (proc_id, prod_id, os_id, pkg_health_tag, cmd_interface, pkg_owner, is_interface, proc_description
5649
                     )
5650
              VALUES (proc_rec.proc_id, proc_rec.pv_id, nosid, proc_rec.proc_name, proc_rec.run_as, proc_rec.pkg_owner, proc_rec.is_interface, proc_rec.proc_description
5651
                     );
5652
 
5653
         SELECT prc.proc_name
5654
           INTO processname
5655
           FROM processes prc
5656
          WHERE prc.proc_id = proc_rec.proc_id;
5657
 
5658
	-- Log Action --
5659
	pk_Bom.Log_Os_Trail ( nosid,  
5660
						  'Added process with health tag '|| processname ||' for product '|| PkgName,
5661
						  nUserId );
5662
 
5663
         FETCH proc_cur
5664
          INTO proc_rec;
5665
      END LOOP;
5666
   END;
5667
 
5668
/*--------------------------------------------------------------------------------------------------*/
5669
 
5670
 
5671
 
5672
END pk_Operating_System;
5673
 
5674
/
5675
--------------------------------------------------------
5676
--  DDL for Package Body PK_PRODUCT
5677
--------------------------------------------------------
5678
 
5924 dpurdie 5679
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_PRODUCT" 
3926 dpurdie 5680
IS
5681
/* ---------------------------------------------------------------------------
5682
    Modified By: Rupesh Solanki
5683
   Date: 20/03/2006
5684
   --------------------------------------------------------------------------- */
5685
 
5686
   /*--------------------------------------------------------------------------------------------------*/
5687
   PROCEDURE new_product (
5688
      sprodname      IN       PACKAGES.pkg_name%TYPE,
5689
      sprodversion   IN       package_versions.pkg_version%TYPE,
5690
      nuserid        IN       NUMBER,
5691
      outprodid      OUT      package_versions.pv_id%TYPE
5692
   )
5693
   IS
5694
   BEGIN
5695
/*--------------- Business Rules Here -------------------*/
5696
/*-------------------------------------------------------*/
5697
 
5698
      -- Call Release Manager to add new product
5699
      seed_package_names_versions (sprodname,
5700
                                   sprodversion,
5701
                                   nuserid,
5702
                                   outprodid
5703
                                  );
5704
   END new_product;
5705
 
5706
/*--------------------------------------------------------------------------------------------------*/
5707
   PROCEDURE add_product (
5708
      sprodidlist   IN   VARCHAR2,
5709
      nosid         IN   os_contents.os_id%TYPE,
5710
      nuserid       IN   NUMBER
5711
   )
5712
   IS
5713
      nextseqnum   NUMBER;
5714
      pkgname      VARCHAR2 (100);
5715
      pkgversion   VARCHAR2 (100);
5716
      nodename     VARCHAR2 (4000);
5717
 
5718
      CURSOR prod_cur
5719
      IS
5720
         SELECT   qry.pv_id AS prod_id, qry.pv_description, qry.comments,
5721
                  qry.is_patch
5722
             FROM (
5723
                   /* Products */
5724
                   SELECT pv.pv_id, TO_NUMBER (NULL) AS install_order,
5725
                          TO_NUMBER (NULL) AS pkg_id, pv.pv_description,
5726
                          pv.comments, pv.is_patch
5727
                     FROM package_versions pv
5728
                    WHERE pv.is_patch IS NULL
5729
                      AND pv.pv_id IN (
5730
                             SELECT *
5731
                               FROM THE
5732
                                       (SELECT CAST
5733
                                                  (in_list_number (sprodidlist) AS depmgr_number_tab_t
5734
                                                  )
5735
                                          FROM DUAL
5736
                                       ))
5737
                   UNION ALL
5738
                   /* Patches */
5739
                   SELECT pv.pv_id, pp.install_order, pv.pkg_id,
5740
                          pv.pv_description, pv.comments, pv.is_patch
5741
                     FROM package_patches pp, package_versions pv
5742
                    WHERE pp.patch_id = pv.pv_id
5743
                      AND pp.patch_id IN (
5744
                             SELECT *
5745
                               FROM THE
5746
                                       (SELECT CAST
5747
                                                  (in_list_number (sprodidlist) AS depmgr_number_tab_t
5748
                                                  )
5749
                                          FROM DUAL
5750
                                       ))) qry
5751
         ORDER BY qry.pkg_id, qry.install_order;
5752
 
5753
      prod_rec     prod_cur%ROWTYPE;
5754
   BEGIN
5755
/*--------------- Business Rules Here -------------------*/
5756
/*-------------------------------------------------------*/
5757
 
5758
      -- Get seq_num
5759
      SELECT MAX (osc.seq_num)
5760
        INTO nextseqnum
5761
        FROM os_contents osc
5762
       WHERE osc.os_id = nosid;
5763
 
5764
      -- Set NextSeqNum to 0 if no existing products are found
5765
      IF nextseqnum IS NULL
5766
      THEN
5767
         nextseqnum := 1;
5768
      ELSE
5769
         nextseqnum := nextseqnum + 1;
5770
      END IF;
5771
 
5772
      -- Insert into OS Contents
5773
      OPEN prod_cur;
5774
 
5775
      FETCH prod_cur
5776
       INTO prod_rec;
5777
 
5778
      WHILE prod_cur%FOUND
5779
      LOOP
5780
         IF (prod_rec.is_patch IS NULL)
5781
         THEN
5782
            INSERT INTO os_contents
5783
                        (os_id, seq_num, prod_id,
5784
                         product_comments
5785
                        )
5786
                 VALUES (nosid, nextseqnum, prod_rec.prod_id,
5787
                         prod_rec.pv_description
5788
                        );
5789
         ELSE
5790
            INSERT INTO os_contents
5791
                        (os_id, seq_num, prod_id,
5792
                         product_comments
5793
                        )
5794
                 VALUES (nosid, nextseqnum, prod_rec.prod_id,
5795
                         prod_rec.comments
5796
                        );
5797
         END IF;
5798
 
5799
         SELECT pkg.pkg_name
5800
           INTO pkgname
5801
           FROM PACKAGES pkg, package_versions pv
5802
          WHERE pv.pv_id = prod_rec.prod_id AND pkg.pkg_id = pv.pkg_id;
5803
 
5804
         SELECT pkg_version
5805
           INTO pkgversion
5806
           FROM package_versions pv
5807
          WHERE pv.pv_id = prod_rec.prod_id;
5808
 
5809
         SELECT nn.node_name
5810
           INTO nodename
5811
           FROM network_nodes nn, operating_systems os
5812
          WHERE nn.node_id = os.node_id AND os.os_id = nosid;
5813
 
5814
         -- Log Action --
5815
         pk_bom.log_os_trail (nosid,
5816
                                 'Added Product: '
5817
                              || pkgname
5818
                              || ' (Version: '
5819
                              || pkgversion
5820
                              || ') with Install Order: '
5821
                              || nextseqnum
5822
                              || ' on Node: '
5823
                              || nodename,
5824
                              nuserid
5825
                             );
5826
         nextseqnum := nextseqnum + 1;
5827
 
5828
         FETCH prod_cur
5829
          INTO prod_rec;
5830
      END LOOP;
5831
 
5832
      CLOSE prod_cur;
5833
   END add_product;
5834
 
5835
/*--------------------------------------------------------------------------------------------------*/
5836
   PROCEDURE hide_product (
5837
      sprodidlist   IN   VARCHAR2,
5838
      nosid         IN   os_contents.os_id%TYPE,
5839
      nuserid       IN   NUMBER
5840
   )
5841
   IS
5842
   BEGIN
5843
/*--------------- Business Rules Here -------------------*/
5844
/*-------------------------------------------------------*/
5845
      INSERT INTO hide_products
5846
                  (os_id, prod_id
5847
                  )
5848
           VALUES (nosid, sprodidlist
5849
                  );
5850
   END hide_product;
5851
 
5852
/*--------------------------------------------------------------------------------------------------*/
5853
   PROCEDURE unhide_product (
5854
      sprodidlist   IN   NUMBER,
5855
      nosid         IN   os_contents.os_id%TYPE,
5856
      nuserid       IN   NUMBER
5857
   )
5858
   IS
5859
   BEGIN
5860
/*--------------- Business Rules Here -------------------*/
5861
/*-------------------------------------------------------*/
5862
      DELETE FROM hide_products
5863
            WHERE prod_id = sprodidlist AND os_id = nosid;
5864
   END unhide_product;
5865
 
5866
/*--------------------------------------------------------------------------------------------------*/
5867
   PROCEDURE update_process (
5868
      nprocid         IN   processes_config.proc_id%TYPE,
5869
      nprodid         IN   processes_config.prod_id%TYPE,
5870
      nisinterface    IN   processes_config.is_interface%TYPE,
5871
      nosid           IN   processes_config.os_id%TYPE,
5872
      ncmdinterface   IN   processes_config.cmd_interface%TYPE,
5873
      npkgowner       IN   processes_config.pkg_owner%TYPE,
5874
      spkghealthtag   IN   processes_config.pkg_health_tag%TYPE,
5875
      nproduct        IN   processes_config.prod_id%TYPE
5876
   )
5877
   IS
5878
   BEGIN
5879
      UPDATE processes_config
5880
         SET cmd_interface = ncmdinterface,
5881
             pkg_owner = npkgowner,
5882
             is_interface = nisinterface,
5883
             pkg_health_tag = spkghealthtag,
5884
             prod_id = nproduct
5885
       WHERE prod_id = nprodid AND os_id = nosid AND proc_id = nprocid;
5886
   END update_process;
5887
 
5888
/*--------------------------------------------------------------------------------------------------*/
5889
   PROCEDURE update_product (
5890
      noldprodid             IN       os_contents.prod_id%TYPE,
5891
      snewprodidversion      IN       VARCHAR2,
5892
      nosid                  IN       os_contents.os_id%TYPE,
5893
      nseqnum                IN       os_contents.seq_num%TYPE,
5894
      scomments              IN       os_contents.product_comments%TYPE,
5895
      ssunoselectronicname   IN       PACKAGES.sunos_electronic_name%TYPE,
5896
      swinelectronicname     IN       PACKAGES.win_electronic_name%TYPE,
5897
      sisnodespec            IN       os_contents.is_node_spec%TYPE,
5898
      snotxml                IN       os_contents.not_xml%TYPE,
5899
      spatchelectronicname   IN       package_versions.patch_electronic_name%TYPE,
5900
      nuserid                IN       NUMBER,
5901
      outprodid              OUT      package_versions.pv_id%TYPE
5902
   )
5903
   IS
5904
      nnewprodid   os_contents.prod_id%TYPE;
5905
      sprodname    PACKAGES.pkg_name%TYPE;
5906
 
5907
      CURSOR curprod
5908
      IS
5909
         SELECT pv.pv_id
5910
           FROM package_versions pv
5911
          WHERE pv.pkg_id IN (SELECT pv.pkg_id
5912
                                FROM package_versions pv
5913
                               WHERE pv.pv_id = noldprodid)
5914
            AND pv.pkg_version = snewprodidversion;
5915
 
5916
      recprod      curprod%ROWTYPE;
5917
   BEGIN
5918
      /*--------------- Business Rules Here -------------------*/
5919
      IF    (noldprodid IS NULL)
5920
         OR (snewprodidversion IS NULL)
5921
         OR (nosid IS NULL)
5922
         OR (nseqnum IS NULL)
5923
      THEN
5924
         raise_application_error (-20000,
5925
                                     'Missing some parameters! nOldProdId= '
5926
                                  || noldprodid
5927
                                  || ', sNewProdIdVersion= '
5928
                                  || snewprodidversion
5929
                                  || ', nOsId= '
5930
                                  || nosid
5931
                                  || ', nSeqNum= '
5932
                                  || nseqnum
5933
                                 );
5934
      END IF;
5935
 
5936
/*-------------------------------------------------------*/
5937
 
5938
      -- Get new prod_id
5939
      OPEN curprod;
5940
 
5941
      FETCH curprod
5942
       INTO recprod;
5943
 
5944
      -- Get the Package Name
5945
      SELECT pkg.pkg_name
5946
        INTO sprodname
5947
        FROM PACKAGES pkg, package_versions pv
5948
       WHERE pkg.pkg_id = pv.pkg_id AND pv.pv_id = noldprodid;
5949
 
5950
      IF curprod%FOUND
5951
      THEN
5952
         nnewprodid := recprod.pv_id;
5953
      ELSE
5954
         -- Call Release Manager to add new product
5955
         seed_package_names_versions (sprodname,
5956
                                      snewprodidversion,
5957
                                      nuserid,
5958
                                      outprodid
5959
                                     );
5960
         nnewprodid := outprodid;
5961
      /*RAISE_APPLICATION_ERROR (-20000, 'Version '|| sNewProdIdVersion ||' does not exist.');*/
5962
      END IF;
5963
 
5964
      CLOSE curprod;
5965
 
5966
      -- Update Product Details
5967
      UPDATE os_contents
5968
         SET prod_id = nnewprodid,
5969
             product_comments = scomments,
5970
             not_xml = snotxml,
5971
             is_node_spec = sisnodespec
5972
       WHERE os_id = nosid AND prod_id = noldprodid;
5973
 
5974
      --Update Package Electronic Name Details In Packages Table
5975
      UPDATE PACKAGES
5976
         SET sunos_electronic_name = ssunoselectronicname,
5977
             win_electronic_name = swinelectronicname
5978
       WHERE pkg_id = (SELECT pkg_id
5979
                         FROM package_versions
5980
                        WHERE package_versions.pv_id = nnewprodid);
5981
 
5982
      --Update Patch Electronic Name In Package Versions Table
5983
      UPDATE package_versions
5984
         SET patch_electronic_name = spatchelectronicname
5985
       WHERE pv_id = nnewprodid;
5986
 
5987
      -- Update seq_num
5988
      pk_operating_system.shift_product_seqnum (nnewprodid, nosid, nseqnum);
5989
   END update_product;
5990
 
5991
/*--------------------------------------------------------------------------------------------------*/
5992
   PROCEDURE replace_product (
5993
      noldprodid   IN   os_contents.prod_id%TYPE,
5994
      nnewprodid   IN   os_contents.prod_id%TYPE,
5995
      nosid        IN   os_contents.os_id%TYPE,
5996
      nuserid      IN   NUMBER
5997
   )
5998
   IS
5999
      oldversion   VARCHAR2 (100);
6000
      newversion   VARCHAR2 (100);
6001
      pkgname      VARCHAR2 (100);
6002
      nodename     VARCHAR2 (4000);
6003
   BEGIN
6004
/*--------------- Business Rules Here -------------------*/
6005
/*-------------------------------------------------------*/
6006
      UPDATE os_contents
6007
         SET prod_id = nnewprodid
6008
       WHERE prod_id = noldprodid AND os_id = nosid;
6009
 
6010
      SELECT pkg_version
6011
        INTO oldversion
6012
        FROM package_versions
6013
       WHERE pv_id = noldprodid;
6014
 
6015
      SELECT pkg_version
6016
        INTO newversion
6017
        FROM package_versions
6018
       WHERE pv_id = nnewprodid;
6019
 
6020
      SELECT pkg.pkg_name
6021
        INTO pkgname
6022
        FROM PACKAGES pkg, package_versions pv
6023
       WHERE pv.pv_id = nnewprodid AND pkg.pkg_id = pv.pkg_id;
6024
 
6025
      SELECT nn.node_name
6026
        INTO nodename
6027
        FROM network_nodes nn, operating_systems os
6028
       WHERE nn.node_id = os.node_id AND os.os_id = nosid;
6029
 
6030
      -- Log Action --
6031
      pk_bom.log_os_trail (nosid,
6032
                              'Updated Product: '
6033
                           || pkgname
6034
                           || ' from Version: '
6035
                           || oldversion
6036
                           || ' to '
6037
                           || newversion
6038
                           || ' on Node: '
6039
                           || nodename,
6040
                           nuserid
6041
                          );
6042
   END replace_product;
6043
 
6044
/*--------------------------------------------------------------------------------------------------*/
6045
   PROCEDURE remove_process (
6046
      sprocname       IN   processes_config.pkg_health_tag%TYPE,
6047
      sprodidlist     IN   VARCHAR2,
6048
      nosid           IN   os_contents.os_id%TYPE,
6049
      scmdinterface   IN   processes_config.cmd_interface%TYPE,
6050
      spkgowner       IN   processes_config.pkg_owner%TYPE,
6051
      sinterface      IN   processes_config.is_interface%TYPE,
6052
      nuserid         IN   NUMBER
6053
   )
6054
   IS
6055
      processname   VARCHAR2 (4000);
6056
      nodename      VARCHAR2 (4000);
6057
   BEGIN
6058
      -- Log Action --
6059
      pk_bom.log_os_trail (nosid,
6060
                           'Deleted Process: ' || sprocname || ' From Node. ',
6061
                           nuserid
6062
                          );
6063
 
6064
/*Select the Correct Details - Begin*/
6065
      IF scmdinterface IS NOT NULL
6066
      THEN
6067
         IF sinterface IS NOT NULL
6068
         THEN
6069
            IF spkgowner IS NOT NULL
6070
            THEN
6071
               DELETE FROM processes_config
6072
                     WHERE os_id = nosid
6073
                       AND prod_id = sprodidlist
6074
                       AND pkg_health_tag = sprocname
6075
                       AND cmd_interface = scmdinterface
6076
                       AND pkg_owner = spkgowner
6077
                       AND is_interface = sinterface;
6078
            ELSE
6079
      /*sPkgOwner IS NULL, sInterface IS NOT NULL, sCmdInterface IS NOT NULL*/
6080
               DELETE FROM processes_config
6081
                     WHERE os_id = nosid
6082
                       AND prod_id = sprodidlist
6083
                       AND pkg_health_tag = sprocname
6084
                       AND cmd_interface = scmdinterface
6085
                       AND pkg_owner IS NULL
6086
                       AND is_interface = sinterface;
6087
            END IF;
6088
         ELSE               /* sInterface IS NULL, sCmdInterface IS NOT NULL*/
6089
            IF spkgowner IS NOT NULL
6090
            THEN
6091
               DELETE FROM processes_config
6092
                     WHERE os_id = nosid
6093
                       AND prod_id = sprodidlist
6094
                       AND pkg_health_tag = sprocname
6095
                       AND cmd_interface = scmdinterface
6096
                       AND pkg_owner = spkgowner
6097
                       AND is_interface IS NULL;
6098
            ELSE
6099
         /* sPkqOwner IS NULL, sInterface IS NULL, sCmdInterface IS NOT NULL*/
6100
               DELETE FROM processes_config
6101
                     WHERE os_id = nosid
6102
                       AND prod_id = sprodidlist
6103
                       AND pkg_health_tag = sprocname
6104
                       AND cmd_interface = scmdinterface
6105
                       AND pkg_owner IS NULL
6106
                       AND is_interface IS NULL;
6107
            END IF;
6108
         END IF;
6109
      ELSE                                          /* sCmdInterface IS NULL*/
6110
         IF sinterface IS NOT NULL
6111
         THEN
6112
            IF spkgowner IS NOT NULL
6113
            THEN
6114
               DELETE FROM processes_config
6115
                     WHERE os_id = nosid
6116
                       AND prod_id = sprodidlist
6117
                       AND pkg_health_tag = sprocname
6118
                       AND cmd_interface IS NULL
6119
                       AND pkg_owner = spkgowner
6120
                       AND is_interface = sinterface;
6121
            ELSE
6122
        /* sPkgOwner is NULL, sInterface IS NOT NULL, sCmdInterface IS NULL */
6123
               DELETE FROM processes_config
6124
                     WHERE os_id = nosid
6125
                       AND prod_id = sprodidlist
6126
                       AND pkg_health_tag = sprocname
6127
                       AND cmd_interface IS NULL
6128
                       AND pkg_owner IS NULL
6129
                       AND is_interface = sinterface;
6130
            END IF;
6131
         ELSE                   /* sInterface IS NULL, sCmdInterface IS NULL*/
6132
            IF spkgowner IS NOT NULL
6133
            THEN
6134
               DELETE FROM processes_config
6135
                     WHERE os_id = nosid
6136
                       AND prod_id = sprodidlist
6137
                       AND pkg_health_tag = sprocname
6138
                       AND cmd_interface IS NULL
6139
                       AND pkg_owner = spkgowner
6140
                       AND is_interface IS NULL;
6141
            ELSE
6142
             /* sPkgOwner IS NULL, sInterface IS NULL, sCmdInterface IS NULL*/
6143
               DELETE FROM processes_config
6144
                     WHERE os_id = nosid
6145
                       AND prod_id = sprodidlist
6146
                       AND pkg_health_tag = sprocname
6147
                       AND cmd_interface IS NULL
6148
                       AND pkg_owner IS NULL
6149
                       AND is_interface IS NULL;
6150
            END IF;
6151
         END IF;
6152
      END IF;
6153
/*Select the Correct Details - End*/
6154
   END remove_process;
6155
 
6156
/*--------------------------------------------------------------------------------------------------*/
6157
   PROCEDURE remove_products (
6158
      sprodidlist   IN   VARCHAR2,
6159
      nosid         IN   os_contents.os_id%TYPE,
6160
      nuserid       IN   NUMBER
6161
   )
6162
   IS
6163
      pkgname        VARCHAR2 (100);
6164
      pkgversion     VARCHAR2 (100);
6165
      nextseqnum     NUMBER              := 1;
6166
      nidcollector   depmgr_number_tab_t := depmgr_number_tab_t ();
6167
      nodename       VARCHAR2 (4000);
6168
 
6169
      CURSOR prod_cur
6170
      IS
6171
         SELECT   osc.prod_id, osc.seq_num
6172
             FROM os_contents osc
6173
            WHERE osc.os_id = nosid
6174
         ORDER BY osc.seq_num;
6175
 
6176
      prod_rec       prod_cur%ROWTYPE;
6177
   BEGIN
6178
      /*--------------- Business Rules Here -------------------*/
6179
      IF sprodidlist IS NULL
6180
      THEN
6181
         raise_application_error (-20000,
6182
                                  'Please select one or more Products.'
6183
                                 );
6184
      END IF;
6185
 
6186
/*-------------------------------------------------------*/
6187
      SELECT nn.node_name
6188
        INTO nodename
6189
        FROM network_nodes nn, operating_systems os
6190
       WHERE nn.node_id = os.node_id AND os.os_id = nosid;
6191
 
6192
      -- Remove Products
6193
      DELETE FROM os_contents
6194
            WHERE os_id = nosid
6195
              AND prod_id IN (
6196
                     SELECT *
6197
                       FROM THE
6198
                               (SELECT CAST
6199
                                          (in_list_number (sprodidlist) AS depmgr_number_tab_t
6200
                                          )
6201
                                  FROM DUAL
6202
                               ));
6203
 
6204
      -- Remove Processes
6205
      DELETE FROM processes_config
6206
            WHERE os_id = nosid
6207
              AND pkg_id IN (
6208
                     SELECT pkg_id
6209
                       FROM package_versions
6210
                      WHERE pv_id IN (
6211
                               SELECT *
6212
                                 FROM THE
6213
                                         (SELECT CAST
6214
                                                    (in_list_number
6215
                                                                  (sprodidlist) AS depmgr_number_tab_t
6216
                                                    )
6217
                                            FROM DUAL
6218
                                         )));
6219
 
6220
      -- Update Seq Numbers
6221
      OPEN prod_cur;
6222
 
6223
      FETCH prod_cur
6224
       INTO prod_rec;
6225
 
6226
      WHILE prod_cur%FOUND
6227
      LOOP
6228
         UPDATE os_contents
6229
            SET seq_num = nextseqnum
6230
          WHERE os_id = nosid AND prod_id = prod_rec.prod_id;
6231
 
6232
         nextseqnum := nextseqnum + 1;
6233
 
6234
         FETCH prod_cur
6235
          INTO prod_rec;
6236
      END LOOP;
6237
 
6238
      CLOSE prod_cur;
6239
 
6240
      nidcollector := in_list_number (sprodidlist);
6241
 
6242
      FOR i IN 1 .. nidcollector.COUNT
6243
      LOOP
6244
         SELECT pkg.pkg_name
6245
           INTO pkgname
6246
           FROM PACKAGES pkg, package_versions pv
6247
          WHERE pv.pv_id = nidcollector (i) AND pkg.pkg_id = pv.pkg_id;
6248
 
6249
         SELECT pkg_version
6250
           INTO pkgversion
6251
           FROM package_versions pv
6252
          WHERE pv.pv_id = nidcollector (i);
6253
 
6254
         -- Log Action --
6255
         pk_bom.log_os_trail (nosid,
6256
                                 'Deleted Product: '
6257
                              || pkgname
6258
                              || ' (Version: '
6259
                              || pkgversion
6260
                              || ') from Node: '
6261
                              || nodename,
6262
                              nuserid
6263
                             );
6264
      END LOOP;
6265
   END remove_products;
6266
 
6267
/*--------------------------------------------------------------------------------------------------*/
6268
   PROCEDURE add_products_nodespec (
6269
      sprodidlist   IN   VARCHAR2,
6270
      nosid         IN   os_contents.os_id%TYPE,
6271
      nuserid       IN   NUMBER
6272
   )
6273
   IS
6274
      nextseqnum   NUMBER             := 1;
6275
 
6276
      CURSOR prod_cur
6277
      IS
6278
         SELECT   osc.prod_id, osc.seq_num
6279
             FROM os_contents osc
6280
            WHERE osc.os_id = nosid
6281
         ORDER BY osc.seq_num;
6282
 
6283
      prod_rec     prod_cur%ROWTYPE;
6284
   BEGIN
6285
      /*--------------- Business Rules Here -------------------*/
6286
      IF sprodidlist IS NULL
6287
      THEN
6288
         raise_application_error (-20000,
6289
                                  'Please select one or more Products.'
6290
                                 );
6291
      END IF;
6292
 
6293
/*-------------------------------------------------------*/
6294
      UPDATE os_contents
6295
         SET is_node_spec = ''
6296
       WHERE os_id = nosid;
6297
 
6298
      -- Set Nodespec On
6299
      UPDATE os_contents
6300
         SET is_node_spec = 'on'
6301
       WHERE os_id = nosid
6302
         AND prod_id IN (
6303
                SELECT *
6304
                  FROM THE
6305
                          (SELECT CAST
6306
                                     (in_list_number (sprodidlist) AS depmgr_number_tab_t
6307
                                     )
6308
                             FROM DUAL
6309
                          ));
6310
   END add_products_nodespec;
6311
 
6312
/*--------------------------------------------------------------------------------------------------*/
6313
   PROCEDURE accept_reject (
6314
      nprodid     IN   product_details.prod_id%TYPE,
6315
      nbomid      IN   boms.bom_id%TYPE,
6316
      scomments   IN   rejection_trail.comments%TYPE DEFAULT NULL,
6317
      nuserid     IN   rejection_trail.user_id%TYPE,
6318
      nosid       IN   NUMBER
6319
   )
6320
   IS
6321
      isrejected   product_details.is_rejected%TYPE;
6322
      pkgname      VARCHAR2 (100);
6323
      pkgversion   VARCHAR2 (100);
6324
      nodename     VARCHAR2 (4000);
6325
 
6326
      CURSOR curprod
6327
      IS
6328
         SELECT pd.*
6329
           FROM product_details pd
6330
          WHERE pd.prod_id = nprodid;
6331
 
6332
      recprod      curprod%ROWTYPE;
6333
   BEGIN
6334
      /*--------------- Business Rules Here -------------------*/
6335
      IF (nprodid IS NULL)
6336
      THEN
6337
         raise_application_error (-20000,
6338
                                  'Please select at least one product.'
6339
                                 );
6340
      END IF;
6341
 
6342
/*-------------------------------------------------------*/
6343
 
6344
      -- Set new Accept-Reject state
6345
      isrejected := 'Y';
6346
 
6347
      SELECT nn.node_name
6348
        INTO nodename
6349
        FROM network_nodes nn, operating_systems os
6350
       WHERE nn.node_id = os.node_id AND os.os_id = nosid;
6351
 
6352
      OPEN curprod;
6353
 
6354
      FETCH curprod
6355
       INTO recprod;
6356
 
6357
      IF curprod%FOUND
6358
      THEN
6359
         /* Product Details found */
6360
         SELECT pkg.pkg_name
6361
           INTO pkgname
6362
           FROM PACKAGES pkg, package_versions pv
6363
          WHERE pv.pv_id = nprodid AND pkg.pkg_id = pv.pkg_id;
6364
 
6365
         SELECT pkg_version
6366
           INTO pkgversion
6367
           FROM package_versions pv
6368
          WHERE pv.pv_id = nprodid;
6369
 
6370
         -- Set new Accept-Reject state
6371
         IF recprod.is_rejected = 'Y'
6372
         THEN
6373
            isrejected := 'N';
6374
            -- Log Action --
6375
            pk_bom.log_os_trail (nosid,
6376
                                    'Accepted Product: '
6377
                                 || pkgname
6378
                                 || ' '
6379
                                 || pkgversion
6380
                                 || ' on Node: '
6381
                                 || nodename,
6382
                                 nuserid
6383
                                );
6384
         ELSE
6385
            isrejected := 'Y';
6386
            -- Log Action --
6387
            pk_bom.log_os_trail (nosid,
6388
                                    'Rejected Product: '
6389
                                 || pkgname
6390
                                 || ' '
6391
                                 || pkgversion
6392
                                 || ' on Node: '
6393
                                 || nodename,
6394
                                 nuserid
6395
                                );
6396
         END IF;
6397
 
6398
         -- Toggle Accept-Reject State
6399
         UPDATE product_details pd
6400
            SET pd.is_rejected = isrejected
6401
          WHERE pd.prod_id = nprodid;
6402
      ELSE
6403
         /* Product Details NOT found */
6404
 
6405
         -- Toggle Accept-Reject State
6406
         INSERT INTO product_details
6407
                     (prod_id, is_rejected
6408
                     )
6409
              VALUES (nprodid, isrejected
6410
                     );
6411
      END IF;
6412
 
6413
      CLOSE curprod;
6414
 
6415
      -- Reflect changes to the BOM level
6416
 
6417
      /* Log Rejection Trail */
6418
      pk_utils.log_rejection_trail
6419
                                 (get_system_value ('enumENTITY_TYPE_PRODUCT'),
6420
                                  nprodid,
6421
                                  isrejected,
6422
                                  nuserid,
6423
                                  scomments
6424
                                 );
6425
   END accept_reject;
6426
 
6427
/*--------------------------------------------------------------------------------------------------*/
6428
   PROCEDURE accept_reject_list (
6429
      nprodidlist   IN   VARCHAR2,
6430
      nbomid        IN   boms.bom_id%TYPE,
6431
      scomments     IN   rejection_trail.comments%TYPE DEFAULT NULL,
6432
      nuserid       IN   rejection_trail.user_id%TYPE,
6433
      nosid         IN   NUMBER
6434
   )
6435
   IS
6436
      nidcollector   depmgr_number_tab_t := depmgr_number_tab_t ();
6437
   BEGIN
6438
      /*--------------- Business Rules Here -------------------*/
6439
      IF (nprodidlist IS NULL)
6440
      THEN
6441
         raise_application_error (-20000,
6442
                                  'Please select at least one product.'
6443
                                 );
6444
      END IF;
6445
 
6446
/*-------------------------------------------------------*/
6447
      nidcollector := in_list_number (nprodidlist);
6448
 
6449
      FOR i IN 1 .. nidcollector.COUNT
6450
      LOOP
6451
         accept_reject (nidcollector (i), nbomid, scomments, nuserid, nosid);
6452
      END LOOP;
6453
   END accept_reject_list;
6454
 
6455
/*--------------------------------------------------------------------------------------------------*/
6456
   PROCEDURE accept_reject_comments (
6457
      nprodid      IN   product_details.prod_id%TYPE,
6458
      nrejectseq   IN   rejection_trail.reject_seq%TYPE,
6459
      scomments    IN   rejection_trail.comments%TYPE DEFAULT NULL,
6460
      nuserid      IN   rejection_trail.user_id%TYPE
6461
   )
6462
   IS
6463
      isrejected   rejection_trail.is_rejected%TYPE;
6464
   BEGIN
6465
      /*--------------- Business Rules Here -------------------*/
6466
      IF (nprodid IS NULL)
6467
      THEN
6468
         raise_application_error (-20000,
6469
                                     'Missing some parameters! nProdId= '
6470
                                  || nprodid
6471
                                 );
6472
      END IF;
6473
 
6474
/*-------------------------------------------------------*/
6475
      IF nrejectseq IS NULL
6476
      THEN
6477
         /* CREATE New Note */
6478
 
6479
         -- Get last IsRejected state
6480
         SELECT   rt.is_rejected
6481
             INTO isrejected
6482
             FROM rejection_trail rt
6483
            WHERE rt.entity_id = nprodid
6484
              AND rt.enum_entity_type =
6485
                                  get_system_value ('enumENTITY_TYPE_PRODUCT')
6486
              AND ROWNUM = 1
6487
         ORDER BY rt.reject_seq;
6488
 
6489
         /* Log Rejection Trail */
6490
         pk_utils.log_rejection_trail
6491
                                 (get_system_value ('enumENTITY_TYPE_PRODUCT'),
6492
                                  nprodid,
6493
                                  isrejected,
6494
                                  nuserid,
6495
                                  scomments
6496
                                 );
6497
      ELSE
6498
         /* EDIT Note */
6499
         UPDATE rejection_trail rt
6500
            SET rt.comments = scomments,
6501
                rt.user_id = nuserid,
6502
                rt.date_time_stamp = get_datetime ()
6503
          WHERE rt.enum_entity_type =
6504
                                  get_system_value ('enumENTITY_TYPE_PRODUCT')
6505
            AND rt.entity_id = nprodid
6506
            AND rt.reject_seq = nrejectseq;
6507
      END IF;
6508
   END accept_reject_comments;
6509
 
6510
/*--------------------------------------------------------------------------------------------------*/
6511
   PROCEDURE sort_products (
6512
      sprodidorder   IN   VARCHAR2,
6513
      nosid          IN   os_contents.os_id%TYPE,
6514
      nuserid        IN   NUMBER
6515
   )
6516
   IS
6517
      nidcollector   depmgr_number_tab_t := depmgr_number_tab_t ();
6518
      seqnum         NUMBER;
6519
   BEGIN
6520
      /*--------------- Business Rules Here -------------------*/
6521
      -- Check for parameters
6522
      IF (sprodidorder IS NULL) OR (nosid IS NULL)
6523
      THEN
6524
         raise_application_error (-20000,
6525
                                     'Missing some parameters! nOsId='
6526
                                  || nosid
6527
                                  || ' sProdIdOrder='
6528
                                  || sprodidorder
6529
                                 );
6530
      END IF;
6531
 
6532
/*-------------------------------------------------------*/
6533
      nidcollector := in_list_number (sprodidorder);
6534
      -- Set start sequence number
6535
      seqnum := 1;
6536
 
6537
      FOR i IN 1 .. nidcollector.COUNT
6538
      LOOP
6539
         -- Update new sequence number
6540
         UPDATE os_contents osc
6541
            SET osc.seq_num = seqnum
6542
          WHERE osc.os_id = nosid AND osc.prod_id = nidcollector (i);
6543
 
6544
         seqnum := seqnum + 1;
6545
      END LOOP;
6546
   END sort_products;
6547
 
6548
/*--------------------------------------------------------------------------------------------------*/
6549
   PROCEDURE remove_obsolete_patches (
6550
      nosid     IN   os_contents.os_id%TYPE,
6551
      nuserid   IN   NUMBER
6552
   )
6553
   IS
6554
      nextseqnum         NUMBER                     := 1;
6555
 
6556
      CURSOR prod_cur
6557
      IS
6558
         SELECT   osc.prod_id, osc.seq_num
6559
             FROM os_contents osc
6560
            WHERE osc.os_id = nosid
6561
         ORDER BY osc.seq_num;
6562
 
6563
      prod_rec           prod_cur%ROWTYPE;
6564
 
6565
      CURSOR log_obsolete_cur
6566
      IS
6567
         SELECT osc.prod_id, pv.pkg_version
6568
           FROM os_contents osc, package_versions pv
6569
          WHERE pv.pv_id = osc.prod_id
6570
            AND pv.is_obsolete = 'Y'
6571
            AND osc.os_id = nosid;
6572
 
6573
      log_obsolete_rec   log_obsolete_cur%ROWTYPE;
6574
   BEGIN
6575
      -- Log Obsolete Patches
6576
      OPEN log_obsolete_cur;
6577
 
6578
      FETCH log_obsolete_cur
6579
       INTO log_obsolete_rec;
6580
 
6581
      WHILE log_obsolete_cur%FOUND
6582
      LOOP
6583
         pk_bom.log_os_trail (nosid,
6584
                                 'Removed Obsolete Patch: '
6585
                              || log_obsolete_rec.pkg_version,
6586
                              nuserid
6587
                             );
6588
 
6589
         FETCH log_obsolete_cur
6590
          INTO log_obsolete_rec;
6591
      END LOOP;
6592
 
6593
      CLOSE log_obsolete_cur;
6594
 
6595
      -- Delete Obsolete Patches in the OS.
6596
      DELETE FROM os_contents
6597
            WHERE os_id = nosid
6598
              AND prod_id IN (
6599
                     SELECT osc.prod_id
6600
                       FROM os_contents osc, package_versions pv
6601
                      WHERE pv.pv_id = osc.prod_id
6602
                        AND pv.is_obsolete = 'Y'
6603
                        AND osc.os_id = nosid);
6604
 
6605
      -- Update Seq Numbers
6606
      OPEN prod_cur;
6607
 
6608
      FETCH prod_cur
6609
       INTO prod_rec;
6610
 
6611
      WHILE prod_cur%FOUND
6612
      LOOP
6613
         UPDATE os_contents
6614
            SET seq_num = nextseqnum
6615
          WHERE os_id = nosid AND prod_id = prod_rec.prod_id;
6616
 
6617
         nextseqnum := nextseqnum + 1;
6618
 
6619
         FETCH prod_cur
6620
          INTO prod_rec;
6621
      END LOOP;
6622
 
6623
      CLOSE prod_cur;
6624
   END remove_obsolete_patches;
6625
 
6626
/*--------------------------------------------------------------------------------------------------*/
6627
   FUNCTION get_os_id (pvid IN NUMBER)
6628
      RETURN NUMBER
6629
   IS
6630
      returnvalue   NUMBER;
6631
   BEGIN
6632
      SELECT osc.os_id
6633
        INTO returnvalue
6634
        FROM os_contents osc
6635
       WHERE osc.prod_id = pvid;
6636
 
6637
      RETURN returnvalue;
6638
   END;
6639
 
6640
/*--------------------------------------------------------------------------------------------------*/
6641
   FUNCTION get_node_id (osid IN NUMBER)
6642
      RETURN NUMBER
6643
   IS
6644
      returnvalue   NUMBER;
6645
   BEGIN
6646
      SELECT os.node_id
6647
        INTO returnvalue
6648
        FROM operating_systems os
6649
       WHERE os.os_id = osid;
6650
 
6651
      RETURN returnvalue;
6652
   END;
6653
 
6654
/*-------------------------------------------------------------------------------------------------------*/
6655
   PROCEDURE add_product_note (
6656
      nprodid   IN   NUMBER,
6657
      snotes    IN   VARCHAR2,
6658
      nuserid   IN   NUMBER
6659
   )
6660
   IS
6661
   BEGIN
6662
      INSERT INTO product_notes
6663
           VALUES (nprodid, snotes);
6664
 
6665
      /* log Product_Trail*/
6666
      pk_product.log_product_trail (nprodid, snotes, nuserid);
6667
   END add_product_note;
6668
 
6669
/*-------------------------------------------------------------------------------------------------------*/
6670
   PROCEDURE edit_product_note (
6671
      nprodid   IN   NUMBER,
6672
      snotes    IN   VARCHAR2,
6673
      nuserid   IN   NUMBER
6674
   )
6675
   IS
6676
   BEGIN
6677
      UPDATE product_notes
6678
         SET notes = snotes
6679
       WHERE prod_id = nprodid;
6680
 
6681
      /* log Product_Trail*/
6682
      pk_product.log_product_trail (nprodid, snotes, nuserid);
6683
   END edit_product_note;
6684
 
6685
/*--------------------------------------------------------------------------------------------------*/
6686
   PROCEDURE log_product_trail (
6687
      nprodid   IN   product_trail.prod_id%TYPE,
6688
      saction   IN   product_trail.trail_action%TYPE,
6689
      nuserid   IN   product_trail.user_id%TYPE
6690
   )
6691
   IS
6692
   BEGIN
6693
      /*--------------- Business Rules Here -------------------*/
6694
      IF (nprodid IS NULL) OR (saction IS NULL) OR (nuserid IS NULL)
6695
      THEN
6696
         raise_application_error (-20000,
6697
                                     'Missing some parameters! nProdId= '
6698
                                  || nprodid
6699
                                  || ', sAction='
6700
                                  || saction
6701
                                  || ', nUserId='
6702
                                  || nuserid
6703
                                 );
6704
      END IF;
6705
 
6706
/*-------------------------------------------------------*/
6707
      INSERT INTO product_trail
6708
                  (prod_id, trail_action, user_id, date_time_stamp
6709
                  )
6710
           VALUES (nprodid, saction, nuserid, get_datetime ()
6711
                  );
6712
   END log_product_trail;
6713
/*--------------------------------------------------------------------------------------------------*/
6714
END pk_product;
6715
 
6716
/
6717
--------------------------------------------------------
6718
--  DDL for Package Body PK_PRODUCTION
6719
--------------------------------------------------------
6720
 
5924 dpurdie 6721
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_PRODUCTION" 
3926 dpurdie 6722
IS
6723
/* ---------------------------------------------------------------------------
6724
    Version: 1.0.0
6725
   --------------------------------------------------------------------------- */
6726
 
6727
 
6728
/*--------------------------------------------------------------------------------------------------*/
6729
PROCEDURE Release_Authorisation_Tester ( nPvId IN NUMBER,
6730
  					  				   	 nBomId IN NUMBER,
6731
										 nTesterId IN NUMBER,
6732
										 sTesterComments IN VARCHAR2 ) IS
6733
 
6734
 
6735
BEGIN
6736
	/*--------------- Business Rules Here -------------------*/
6737
	/*-------------------------------------------------------*/
6738
 
6739
 
6740
 
6741
	-- Insert Into Release Authorisation Table --
6742
	INSERT INTO RELEASE_AUTHORISATION ( PV_ID, BOM_ID, TESTER_ID, TESTER_COMMENTS, TESTER_DATESTAMP )
6743
	VALUES ( nPvId, nBomId, nTesterId, sTesterComments, GET_DATETIME() );
6744
 
6745
 
6746
 
6747
END	Release_Authorisation_Tester;
6748
 
6749
/*--------------------------------------------------------------------------------------------------*/
6750
 
6751
/*--------------------------------------------------------------------------------------------------*/
6752
PROCEDURE Release_Authorisation_Manager ( nPvId IN NUMBER,
6753
  					  				   	  nBomId IN NUMBER,
6754
										  nManagerId IN NUMBER,
6755
										  sManagerComments IN VARCHAR2 ) IS
6756
 
6757
 
6758
BEGIN
6759
	/*--------------- Business Rules Here -------------------*/
6760
	/*-------------------------------------------------------*/
6761
 
6762
 
6763
 
6764
	-- Insert Into Release Authorisation Table --
6765
	UPDATE RELEASE_AUTHORISATION 
6766
	SET MANAGER_ID = nManagerId,
6767
		MANAGER_COMMENTS = sManagerComments,
6768
		MANAGER_DATESTAMP = GET_DATETIME(),
6769
		IS_OFFICIAL = 'Y'
6770
	WHERE PV_ID = nPvId
6771
	AND BOM_ID = nBomId;	
6772
 
6773
 
6774
 
6775
END	Release_Authorisation_Manager;
6776
 
6777
/*--------------------------------------------------------------------------------------------------*/
6778
 
6779
/*--------------------------------------------------------------------------------------------------*/
6780
PROCEDURE Log_Pkg_Trail ( nPkgId IN OS_TRAIL.OS_ID%TYPE,
6781
						  sAction IN OS_TRAIL.TRAIL_ACTION%TYPE,
6782
						  nUserId IN OS_TRAIL.USER_ID%TYPE  ) IS
6783
 
6784
 
6785
BEGIN
6786
	/*--------------- Business Rules Here -------------------*/
6787
	IF (nPkgId IS NULL) OR (sAction IS NULL) OR (nUserId IS NULL)
6788
	THEN
6789
		RAISE_APPLICATION_ERROR (-20000, 'Missing some parameters! nOsId= '|| nPkgId ||', sAction='|| sAction ||', nUserId='|| nUserId );
6790
	END IF;
6791
	/*-------------------------------------------------------*/
6792
 
6793
	INSERT INTO PACKAGE_TRAIL ( PKG_ID, TRAIL_ACTION, USER_ID, DATE_TIME_STAMP )
6794
	VALUES ( nPkgId, sAction, nUserId, GET_DATETIME() );	
6795
 
6796
END	Log_Pkg_Trail;
6797
/*--------------------------------------------------------------------------------------------------*/
6798
PROCEDURE Reject_Product ( nPvId IN NUMBER,
6799
						   nTesterId IN NUMBER,
6800
						   sTesterComments IN VARCHAR2 ) IS
6801
 
6802
IsRejected PRODUCT_DETAILS.IS_REJECTED%TYPE;		
6803
 
6804
CURSOR curProd IS
6805
	SELECT pd.*
6806
	  FROM PRODUCT_DETAILS pd
6807
	 WHERE pd.PROD_ID = nPvId;
6808
recProd curProd%ROWTYPE;				   
6809
 
6810
BEGIN
6811
 
6812
	-- Set new Accept-Reject state
6813
	IsRejected := 'Y';
6814
 
6815
 
6816
	OPEN curProd;
6817
	FETCH curProd INTO recProd;	
6818
 
6819
	IF curProd%FOUND THEN
6820
		/* Product Details found */	
6821
 
6822
		-- Toggle Accept-Reject State 
6823
		UPDATE PRODUCT_DETAILS pd SET
6824
		pd.IS_REJECTED = IsRejected
6825
		WHERE pd.PROD_ID = nPvId;
6826
 
6827
	ELSE
6828
		/* Product Details NOT found */
6829
 
6830
		-- Toggle Accept-Reject State	
6831
		INSERT INTO PRODUCT_DETAILS ( PROD_ID, IS_REJECTED )
6832
		VALUES ( nPvId, IsRejected );	
6833
 
6834
 
6835
 
6836
	END IF;	
6837
	CLOSE curProd;	
6838
 
6839
	/* Log Rejection Trail */
6840
	pk_Utils.Log_Rejection_Trail ( GET_SYSTEM_VALUE('enumENTITY_TYPE_PRODUCT'), nPvId, IsRejected, nTesterId, sTesterComments );
6841
 
6842
 
6843
 
6844
 
6845
 
6846
END Reject_Product;
6847
/*--------------------------------------------------------------------------------------------------*/
6848
PROCEDURE Add_Production_Bom ( nBomId IN NUMBER, 
6849
  							   nBranchId IN NUMBER, 
6850
							   nStateId IN NUMBER, 
6851
							   nProjId IN NUMBER ) IS
6852
 
6853
BEGIN
6854
 
6855
	 --Update the boms table with the branch_id
6856
	 UPDATE BOMS
6857
	 SET RTAG_ID_FK = nBranchId
6858
	 WHERE BOM_ID = nBomId;
6859
 
6860
	 --Add the production bom into the production_bom table
6861
	 INSERT INTO PRODUCTION_BOM (PROJ_ID, BOM_ID, STATE_ID)
6862
	 VALUES(nProjId, nBomId, nStateId);
6863
 
6864
 
6865
 
6866
 
6867
END Add_Production_Bom;
6868
/*--------------------------------------------------------------------------------------------------*/								 
6869
END pk_production;
6870
 
6871
/
6872
--------------------------------------------------------
6873
--  DDL for Package Body PK_PROJECT
6874
--------------------------------------------------------
6875
 
5924 dpurdie 6876
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_PROJECT" 
3926 dpurdie 6877
IS
6878
/* ---------------------------------------------------------------------------
6879
    Version: 2.0
6880
   --------------------------------------------------------------------------- */
6881
 
6882
 
6883
/*--------------------------------------------------------------------------------------------------*/
6884
PROCEDURE Add_Project ( sProjName IN DM_PROJECTS.PROJ_NAME%TYPE,
6885
		  			  	nRMProjFk IN DM_PROJECTS.RM_PROJECTS_FK%TYPE ) IS
6886
 
6887
ProjId NUMBER;
6888
 
6889
BEGIN
6890
	/*--------------- Business Rules Here -------------------*/
6891
	/*-------------------------------------------------------*/
6892
 
6893
	-- Get proj_id --
6894
	SELECT SEQ_PROJ_ID.NEXTVAL INTO ProjId FROM DUAL;
6895
 
6896
 
6897
	-- Insert Branch --
6898
	INSERT INTO DM_PROJECTS ( PROJ_ID, PROJ_NAME, RM_PROJECTS_FK, IS_HIDDEN )
6899
	VALUES ( ProjId, sProjName, nRMProjFk, NULL );
6900
 
6901
	EXCEPTION
6902
    WHEN DUP_VAL_ON_INDEX
6903
	THEN		
6904
		RAISE_APPLICATION_ERROR (-20000, 'Project Name "'|| sProjName ||'" is Already Used.');
6905
 
6906
END	Add_Project;
6907
/*--------------------------------------------------------------------------------------------------*/
6908
PROCEDURE Update_Project ( nProjId IN DM_PROJECTS.PROJ_ID%TYPE,
6909
		  				   sProjName IN DM_PROJECTS.PROJ_NAME%TYPE,
6910
						   nRMProjFk IN DM_PROJECTS.RM_PROJECTS_FK%TYPE ) IS
6911
 
6912
 
6913
BEGIN
6914
	/*--------------- Business Rules Here -------------------*/
6915
	/*-------------------------------------------------------*/
6916
 
6917
 
6918
	-- Update Project --
6919
	UPDATE DM_PROJECTS SET
6920
	PROJ_NAME = sProjName,
6921
	RM_PROJECTS_FK = nRMProjFk
6922
	WHERE PROJ_ID = nProjId;
6923
 
6924
	EXCEPTION
6925
    WHEN DUP_VAL_ON_INDEX
6926
	THEN		
6927
		RAISE_APPLICATION_ERROR (-20000, 'Project Name "'|| sProjName ||'" is Already Used.');
6928
 
6929
END	Update_Project;
6930
/*--------------------------------------------------------------------------------------------------*/
6931
PROCEDURE ShowHide_Project ( nProjId DM_PROJECTS.PROJ_ID%TYPE ) IS
6932
 
6933
currIsHidden DM_PROJECTS.IS_HIDDEN%TYPE;
6934
 
6935
BEGIN
6936
	/*--------------- Business Rules Here -------------------*/
6937
	/*-------------------------------------------------------*/
6938
 
6939
	-- Get current IsHidden State
6940
	SELECT dmp.IS_HIDDEN INTO currIsHidden
6941
	  FROM DM_PROJECTS dmp
6942
	 WHERE dmp.PROJ_ID = nProjId;
6943
 
6944
 
6945
	-- Toggle IsHidden State --
6946
	IF currIsHidden = 'Y' THEN
6947
	   currIsHidden := NULL;
6948
	ELSE
6949
	   currIsHidden := 'Y';
6950
	END IF;
6951
 
6952
 
6953
	-- Update State --
6954
	UPDATE DM_PROJECTS dmp SET
6955
	IS_HIDDEN = currIsHidden
6956
	WHERE dmp.PROJ_ID = nProjId;
6957
 
6958
 
6959
END	ShowHide_Project;
6960
/*--------------------------------------------------------------------------------------------------*/
6961
PROCEDURE Remove_Project ( nProjId IN DM_PROJECTS.PROJ_ID%TYPE ) IS
6962
 
6963
rowCount NUMBER DEFAULT 0;
6964
 
6965
BEGIN
6966
	/*--------------- Business Rules Here -------------------*/
6967
	-- Check for Dependencies (Branches)
6968
	SELECT Count(*) INTO rowCount
6969
	  FROM BRANCHES br
6970
	 WHERE br.PROJ_ID = nProjId;
6971
 
6972
	IF rowCount > 0 THEN
6973
	   RAISE_APPLICATION_ERROR (-20000, 'Some Branches are still using this Project ( Counted '|| rowCount ||' ).' );
6974
	END IF; 
6975
 
6976
	-- Check for Dependencies (States)
6977
	SELECT Count(*) INTO rowCount
6978
	  FROM STATES st
6979
	  WHERE st.PROJ_ID = nProjId;
6980
 
6981
	IF rowCount > 0 THEN
6982
	   RAISE_APPLICATION_ERROR (-20000, 'Some States are still using this Project ( Counted '|| rowCount ||' ).' );
6983
	END IF; 
6984
	/*-------------------------------------------------------*/
6985
 
6986
 
6987
	-- Remove Notificaitons --
6988
	DELETE 
6989
	  FROM NOTIFY_USER nu
6990
	 WHERE nu.PROJ_ID = nProjId;
6991
 
6992
    -- Remove Product Queue --
6993
	DELETE 
6994
	  FROM PRODUCTS_QUEUE pq
6995
	 WHERE pq.PROJ_ID = nProjId; 
6996
 
6997
	-- Remove Project --
6998
	DELETE 
6999
	  FROM DM_PROJECTS dmp
7000
	 WHERE dmp.PROJ_ID = nProjId; 
7001
 
7002
 
7003
END	Remove_Project;
7004
/*--------------------------------------------------------------------------------------------------*/
7005
PROCEDURE Add_Branch ( sBranchName IN BRANCHES.BRANCH_NAME%TYPE,
7006
		  			   nProjId IN BRANCHES.PROJ_ID%TYPE,
7007
					   nRMVTreeId IN BRANCHES.RM_VTREE_FK%TYPE,
7008
                       sBranchComments IN BRANCHES.BRANCH_COMMENTS%TYPE ) IS
7009
 
7010
BranchId NUMBER;
7011
 
7012
BEGIN
7013
	/*--------------- Business Rules Here -------------------*/
7014
	/*-------------------------------------------------------*/
7015
 
7016
	-- Get branch_id --
7017
	SELECT SEQ_BRANCH_ID.NEXTVAL INTO BranchId FROM DUAL;
7018
 
7019
 
7020
	-- Insert Branch --
7021
	INSERT INTO BRANCHES (BRANCH_ID, PROJ_ID, BRANCH_NAME, RM_VTREE_FK, BRANCH_COMMENTS )
7022
	VALUES ( BranchId, nProjId, sBranchName, nRMVTreeId, sBranchComments );
7023
 
7024
	EXCEPTION
7025
    WHEN DUP_VAL_ON_INDEX
7026
	THEN		
7027
		RAISE_APPLICATION_ERROR (-20000, 'Branch Name "'|| sBranchName ||'" is Already Used.');
7028
 
7029
END	Add_Branch;
7030
/*--------------------------------------------------------------------------------------------------*/
7031
PROCEDURE Remove_Branch ( nBranchId IN BRANCHES.BRANCH_ID%TYPE ) IS
7032
 
7033
rowCount NUMBER DEFAULT 0;
7034
 
7035
BEGIN
7036
	/*--------------- Business Rules Here -------------------*/
7037
	-- Check for Dependencies
7038
	SELECT Count(*) INTO rowCount
7039
	  FROM BOMS bo
7040
	 WHERE bo.BRANCH_ID = nBranchId;
7041
 
7042
	IF rowCount > 0 THEN
7043
	   RAISE_APPLICATION_ERROR (-20000, 'Some BOMS are still using this Branch ( Counted '|| rowCount ||' ).' );
7044
	END IF; 
7045
	/*-------------------------------------------------------*/
7046
 
7047
	-- Remove Branch --
7048
	DELETE 
7049
	  FROM BRANCHES br
7050
	 WHERE br.BRANCH_ID = nBranchId; 
7051
 
7052
 
7053
END	Remove_Branch;
7054
/*--------------------------------------------------------------------------------------------------*/
7055
PROCEDURE Update_Branch ( nBranchId IN BRANCHES.BRANCH_ID%TYPE,
7056
		  				  sBranchName IN BRANCHES.BRANCH_NAME%TYPE,
7057
					   	  nRMVTreeId IN BRANCHES.RM_VTREE_FK%TYPE,
7058
                          sBranchComments IN BRANCHES.BRANCH_COMMENTS%TYPE ) IS
7059
 
7060
 
7061
BEGIN
7062
	/*--------------- Business Rules Here -------------------*/
7063
	/*-------------------------------------------------------*/
7064
 
7065
 
7066
	-- Update Branch --
7067
	UPDATE BRANCHES SET
7068
	BRANCH_NAME = sBranchName,
7069
	RM_VTREE_FK = nRMVTreeId,
7070
    BRANCH_COMMENTS = sBranchComments
7071
	WHERE BRANCH_ID = nBranchId;
7072
 
7073
	EXCEPTION
7074
    WHEN DUP_VAL_ON_INDEX
7075
	THEN		
7076
		RAISE_APPLICATION_ERROR (-20000, 'Branch Name "'|| sBranchName ||'" is Already Used.');
7077
 
7078
END	Update_Branch;
7079
/*--------------------------------------------------------------------------------------------------*/
7080
PROCEDURE ShowHide_Branch ( nBranchId IN BRANCHES.BRANCH_ID%TYPE ) IS
7081
 
7082
currIsHidden BRANCHES.IS_HIDDEN%TYPE;
7083
 
7084
BEGIN
7085
	/*--------------- Business Rules Here -------------------*/
7086
	/*-------------------------------------------------------*/
7087
 
7088
	-- Get current IsHidden State
7089
	SELECT br.IS_HIDDEN INTO currIsHidden
7090
	  FROM BRANCHES br
7091
	 WHERE br.BRANCH_ID = nBranchId;
7092
 
7093
 
7094
	-- Toggle IsHidden State --
7095
	IF currIsHidden = 'Y' THEN
7096
	   currIsHidden := NULL;
7097
	ELSE
7098
	   currIsHidden := 'Y';
7099
	END IF;
7100
 
7101
 
7102
	-- Update State --
7103
	UPDATE BRANCHES SET
7104
	IS_HIDDEN = currIsHidden
7105
	WHERE BRANCH_ID = nBranchId;
7106
 
7107
 
7108
END	ShowHide_Branch;
7109
/*--------------------------------------------------------------------------------------------------*/
7110
PROCEDURE ShowHide_Download ( nProjId DM_PROJECTS.PROJ_ID%TYPE ) IS
7111
 
7112
currIsDownload DM_PROJECTS.IS_DOWNLOAD%TYPE;
7113
 
7114
BEGIN
7115
	/*--------------- Business Rules Here -------------------*/
7116
	/*-------------------------------------------------------*/
7117
 
7118
	-- Get current IsHidden State
7119
	SELECT dmp.IS_DOWNLOAD INTO currIsDownload
7120
	  FROM DM_PROJECTS dmp
7121
	 WHERE dmp.PROJ_ID = nProjId;
7122
 
7123
 
7124
	-- Toggle IsHidden State --
7125
	IF currIsDownload = 'Y' THEN
7126
	   currIsDownload := NULL;
7127
	ELSE
7128
	   currIsDownload := 'Y';
7129
	END IF;
7130
 
7131
 
7132
	-- Update State --
7133
	UPDATE DM_PROJECTS dmp SET
7134
	IS_DOWNLOAD = currIsDownload
7135
	WHERE dmp.PROJ_ID = nProjId;
7136
 
7137
 
7138
END	ShowHide_Download;
7139
/*--------------------------------------------------------------------------------------------------*/
7140
PROCEDURE ShowHide_StateDownload ( nStateId STATES.STATE_ID%TYPE ) IS
7141
 
7142
currIsDownload DM_PROJECTS.IS_DOWNLOAD%TYPE;
7143
 
7144
BEGIN
7145
	/*--------------- Business Rules Here -------------------*/
7146
	/*-------------------------------------------------------*/
7147
 
7148
	-- Get current IsHidden State
7149
	SELECT st.IS_DOWNLOAD INTO currIsDownload
7150
	  FROM STATES st
7151
	 WHERE st.STATE_ID = nStateId;
7152
 
7153
 
7154
	-- Toggle IsHidden State --
7155
	IF currIsDownload = 'Y' THEN
7156
	   currIsDownload := NULL;
7157
	ELSE
7158
	   currIsDownload := 'Y';
7159
	END IF;
7160
 
7161
 
7162
	-- Update State --
7163
	UPDATE STATES st SET
7164
	IS_DOWNLOAD = currIsDownload
7165
	WHERE st.STATE_ID = nStateId;
7166
 
7167
 
7168
END	ShowHide_StateDownload;
7169
 
7170
END pk_Project;
7171
 
7172
/
7173
--------------------------------------------------------
7174
--  DDL for Package Body PK_REPORT
7175
--------------------------------------------------------
7176
 
5924 dpurdie 7177
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_REPORT" IS
3926 dpurdie 7178
 
7179
/*
7180
------------------------------
7181
||  Last Modified:  S.Vukovic
7182
||  Modified Date:  8/Mar/2005
7183
||  Body Version:   1.0
7184
------------------------------
7185
*/
7186
 
7187
 
7188
/*-------------------------------------------------------------------------------------------------------*/
7189
FUNCTION BOM_PRODUCTS_BY_NODE_BY_OS ( BomId NUMBER ) RETURN typeCur IS
7190
 
7191
	records typeCur;
7192
 
7193
BEGIN
7194
 
7195
 
7196
	OPEN records FOR
7197
	SELECT nn.NODE_ID,
7198
		   nt.NODE_ICON,
7199
		   nn.NODE_NAME,
7200
		   bt.BOS_ICON,
7201
		   obe.BASE_ENV_ID,
7202
		   os.OS_ID,
7203
		   os.OS_NAME,
7204
		   osc.SEQ_NUM,
7205
		   osc.PROD_ID,
7206
		   pkg.PKG_NAME,
7207
		   pv.PKG_VERSION
7208
	  FROM BOM_CONTENTS bc,
7209
	  	   OPERATING_SYSTEMS os,
7210
		   OS_CONTENTS osc,
7211
		   OS_BASE_ENV obe,
7212
		   BASE_ENV be,
7213
		   BOS_TYPES bt,
7214
		   NETWORK_NODES nn,
7215
		   NODE_TYPES nt,
7216
		   PACKAGE_VERSIONS pv,
7217
		   PACKAGES pkg
7218
	 WHERE os.NODE_ID (+) = nn.NODE_ID 
7219
	   AND nn.NODE_ID = bc.NODE_ID 
7220
	   AND nn.NODE_TYPE_ID = nt.NODE_TYPE_ID (+)
7221
	   AND bc.BOM_ID = BomId
7222
	   AND pv.PKG_ID = pkg.PKG_ID (+)
7223
	   AND osc.OS_ID (+) = os.OS_ID 
7224
	   AND osc.PROD_ID = pv.PV_ID (+)
7225
	   AND obe.OS_ID (+) = os.OS_ID
7226
	   AND obe.BASE_ENV_ID = be.BASE_ENV_ID (+)
7227
	   AND be.BOS_ID = bt.BOS_ID (+)
7228
	ORDER BY UPPER(nn.NODE_NAME), UPPER(os.OS_NAME), osc.SEQ_NUM;
7229
 
7230
 
7231
	RETURN records;	   
7232
 
7233
END;
7234
/*-------------------------------------------------------------------------------------------------------*/
7235
END PK_REPORT;
7236
 
7237
/
7238
--------------------------------------------------------
7239
--  DDL for Package Body PK_REQUIREMENTS
7240
--------------------------------------------------------
7241
 
5924 dpurdie 7242
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_REQUIREMENTS" 
3926 dpurdie 7243
IS
7244
/* ---------------------------------------------------------------------------
7245
    Version: 1.0.0
7246
   --------------------------------------------------------------------------- */
7247
 
7248
/*--------------------------------------------------------------------------------------------------*/
7249
PROCEDURE Add_Bom ( nFromBomId IN BOMS.BOM_ID%TYPE,
7250
					   nToBranchId IN BOMS.BRANCH_ID%TYPE ) IS
7251
 
7252
rowCount NUMBER;
7253
FromBranchId NUMBER;
7254
 
7255
BEGIN
7256
	/*--------------- Business Rules Here -------------------*/
7257
	/*-------------------------------------------------------*/
7258
 
7259
	-- Get FromBranchId
7260
	SELECT bo.BRANCH_ID INTO FromBranchId
7261
	  FROM BOMS bo
7262
	 WHERE bo.BOM_ID = nFromBomId;
7263
 
7264
 
7265
	IF FromBranchId = nToBranchId THEN
7266
		/* Only check for rules if same branch_id */
7267
 
7268
 
7269
		-- REQUIREMENT: Cannot Branch more then 2 BOMs from parent
7270
		SELECT COUNT(*) INTO rowCount
7271
		  FROM BOMS bo
7272
		 WHERE bo.PARENT_BOM_ID = nFromBomId
7273
		   AND bo.BRANCH_ID = nToBranchId
7274
		   AND bo.BOM_ID != bo.PARENT_BOM_ID;
7275
 
7276
		IF rowCount >= 2 THEN
7277
		   RAISE_APPLICATION_ERROR (-20000, 'This BOM is already branched.' );
7278
		END IF;  
7279
 
7280
	END IF;
7281
 
7282
 
7283
END	Add_Bom;
7284
/*--------------------------------------------------------------------------------------------------*/
7285
PROCEDURE Destroy_Bom ( nBomId IN VARCHAR2 ) IS
7286
 
7287
rowCount NUMBER;
7288
nBomIdCollector DEPMGR_NUMBER_TAB_t := DEPMGR_NUMBER_TAB_t();
7289
 
7290
BEGIN
7291
	/*--------------- Business Rules Here -------------------*/
7292
	/*-------------------------------------------------------*/
7293
	nBomIdCollector := IN_LIST_NUMBER( nBomId );
7294
 
7295
	-- REQUIREMENT: For now if can only deal with one bom at a time
7296
	IF nBomIdCollector.Count > 1 THEN
7297
		RAISE_APPLICATION_ERROR (-20000, 'Please select one BOM only.' );
7298
	END IF;
7299
 
7300
 
7301
	-- REQUIREMENT: BOM need to be Unlocked
7302
	SELECT Count(*) INTO rowCount
7303
	  FROM BOMS bo
7304
	 WHERE bo.IS_READONLY = 'Y'
7305
	   AND bo.BOM_ID IN ( 
7306
	  	  		  	      SELECT * 
7307
						  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
7308
					 	 );
7309
 
7310
	IF rowCount > 0 THEN
7311
	   RAISE_APPLICATION_ERROR (-20000, 'Cannot Destroy as selected BOM is locked.' );
7312
	END IF;
7313
 
7314
 
7315
	-- REQUIREMENT: Cannot be a parent to someone
7316
	SELECT Count(*) INTO rowCount
7317
	  FROM BOMS bo
7318
	 WHERE bo.BOM_ID != bo.PARENT_BOM_ID
7319
	   AND bo.PARENT_BOM_ID IN ( 
7320
			  	  		  	      SELECT * 
7321
								  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
7322
							 	);
7323
 
7324
	IF rowCount > 0 THEN
7325
	   RAISE_APPLICATION_ERROR (-20000, 'Cannot Destroy as some BOMs are created or branched from this BOM.' );
7326
	END IF;								
7327
 
7328
 
7329
	-- Check for Dependencies (Knowledge Base Notes)
7330
	SELECT Count(*) INTO rowCount
7331
	  FROM BOM_NOTES bn
7332
	 WHERE bn.BOM_ID IN ( 
7333
	  	  		  	      SELECT * 
7334
						  FROM THE ( SELECT CAST( nBomIdCollector AS DEPMGR_NUMBER_TAB_t ) FROM dual )  
7335
					 	);
7336
 
7337
	IF rowCount > 0 THEN
7338
	   RAISE_APPLICATION_ERROR (-20000, 'Cannot Destroy as some knowledge base notes are attached to this BOM.' );
7339
	END IF;
7340
 
7341
 
7342
END	Destroy_Bom;
7343
/*--------------------------------------------------------------------------------------------------*/
7344
 
7345
 
7346
END pk_Requirements;
7347
 
7348
/
7349
--------------------------------------------------------
7350
--  DDL for Package Body PK_STATE
7351
--------------------------------------------------------
7352
 
5924 dpurdie 7353
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_STATE" 
3926 dpurdie 7354
IS
7355
/* ---------------------------------------------------------------------------
7356
    Version: 1.0.0
7357
   --------------------------------------------------------------------------- */
7358
 
7359
 
7360
/*--------------------------------------------------------------------------------------------------*/
4534 dpurdie 7361
PROCEDURE Add_State ( sStateName     IN STATES.STATE_NAME%TYPE,
7362
		  			          nStateTypeEnum IN STATES.STATE_TYPE_ENUM%TYPE,
7363
		  			          nProjId        IN STATES.PROJ_ID%TYPE ) IS
3926 dpurdie 7364
 
4534 dpurdie 7365
StateId      NUMBER;
3926 dpurdie 7366
NextStateSeq NUMBER;
7367
 
7368
BEGIN
7369
	/*--------------- Business Rules Here -------------------*/
7370
	/*-------------------------------------------------------*/
7371
 
7372
	-- Get state_id --
7373
	SELECT SEQ_STATE_ID.NEXTVAL INTO StateId FROM DUAL;
7374
 
4534 dpurdie 7375
 
3926 dpurdie 7376
	-- Get Next Release Sequence
7377
	SELECT MAX( st.STATE_SEQ ) INTO NextStateSeq
7378
	  FROM STATES st
7379
	 WHERE st.PROJ_ID = nProjId;
7380
 
7381
	IF NextStateSeq IS NULL THEN
7382
	   NextStateSeq := 1;
7383
	ELSE
7384
	   NextStateSeq := NextStateSeq + 1;
7385
	END IF;
7386
 
7387
 
7388
	-- Insert Branch --
7389
	INSERT INTO STATES ( STATE_ID, PROJ_ID, STATE_NAME, STATE_SEQ, STATE_TYPE_ENUM )
7390
	VALUES ( StateId, nProjId, sStateName, NextStateSeq, nStateTypeEnum );
7391
 
7392
 
7393
	EXCEPTION
7394
    WHEN DUP_VAL_ON_INDEX
7395
	THEN		
7396
		RAISE_APPLICATION_ERROR (-20000, 'State Name "'|| sStateName ||'" is Already Used.');
7397
 
7398
END	Add_State;
7399
/*--------------------------------------------------------------------------------------------------*/
4534 dpurdie 7400
PROCEDURE Update_State ( nStateId       IN STATES.STATE_ID%TYPE,
7401
		  			   	         sStateName     IN STATES.STATE_NAME%TYPE,
7402
						             nStateSeq      IN STATES.STATE_SEQ%TYPE,
7403
						             nStateTypeEnum IN STATES.STATE_TYPE_ENUM%TYPE ) IS
3926 dpurdie 7404
 
7405
currSeqNum NUMBER;
7406
FromSeqNum NUMBER;
7407
ProjId NUMBER;
7408
 
7409
BEGIN
7410
	/*--------------- Business Rules Here -------------------*/
7411
	/*-------------------------------------------------------*/
7412
	-- Get State proj_id --
7413
	SELECT st.PROJ_ID INTO ProjId  FROM STATES st WHERE st.STATE_ID = nStateId;
7414
 
4534 dpurdie 7415
 
3926 dpurdie 7416
	-- Get Current seq_num
7417
	SELECT st.STATE_SEQ INTO currSeqNum
7418
	  FROM STATES st
7419
	 WHERE st.STATE_ID = nStateId;
7420
 
7421
 
7422
	IF currSeqNum > nStateSeq
7423
	THEN
7424
 
7425
		FromSeqNum := nStateSeq;
7426
 
7427
		-- Shift others Up
7428
		UPDATE STATES st SET
7429
			   st.STATE_SEQ = st.STATE_SEQ + 1
7430
		 WHERE st.PROJ_ID = ProjId
7431
		   AND st.STATE_SEQ BETWEEN  FromSeqNum  AND  currSeqNum - 1;
7432
 
7433
 
7434
	ELSIF currSeqNum < nStateSeq
7435
	THEN
7436
 
7437
		FromSeqNum := currSeqNum + 1;  
7438
 
7439
		 -- Shift others Down
7440
		UPDATE STATES st SET
7441
		   	   st.STATE_SEQ = st.STATE_SEQ - 1
7442
		 WHERE st.PROJ_ID = ProjId
7443
		   AND st.STATE_SEQ BETWEEN  FromSeqNum  AND  nStateSeq;
7444
 
7445
	END IF;
7446
 
7447
 
7448
	-- Update State --
7449
	UPDATE STATES st SET
7450
	st.STATE_NAME = sStateName,
7451
	st.STATE_SEQ = nStateSeq,
7452
	st.STATE_TYPE_ENUM = nStateTypeEnum
7453
	WHERE st.STATE_ID = nStateId;
7454
 
7455
	EXCEPTION
7456
    WHEN DUP_VAL_ON_INDEX
7457
	THEN		
7458
		RAISE_APPLICATION_ERROR (-20000, 'State Name "'|| sStateName ||'" is Already Used.');
7459
 
7460
END	Update_State;
7461
/*--------------------------------------------------------------------------------------------------*/
7462
PROCEDURE Remove_State ( nStateId IN STATES.STATE_ID%TYPE ) IS
7463
 
7464
rowCount NUMBER DEFAULT 0;
7465
ProjId NUMBER;
7466
NextSeqNum NUMBER;
7467
 
7468
CURSOR curStates IS
7469
	SELECT st.STATE_ID
7470
	  FROM STATES st
7471
	 WHERE st.PROJ_ID = ProjId
7472
	 ORDER BY st.STATE_SEQ;
7473
recStates curStates%ROWTYPE;
7474
 
7475
BEGIN
7476
	/*--------------- Business Rules Here -------------------*/
7477
	-- Check for Dependencies (BOMS)
7478
	SELECT Count(*) INTO rowCount
7479
	  FROM BOM_STATE bs
7480
	 WHERE bs.STATE_ID = nStateId;
7481
 
7482
	IF rowCount > 0 THEN
7483
	   RAISE_APPLICATION_ERROR (-20000, 'Some BOMS are still using this State ( Counted '|| rowCount ||' ).' );
7484
	END IF; 
7485
	/*-------------------------------------------------------*/
7486
 
7487
	-- Get State proj_id --
7488
	SELECT st.PROJ_ID INTO ProjId  FROM STATES st WHERE st.STATE_ID = nStateId;
7489
 
7490
 
7491
	-- Remove State --
7492
	DELETE 
7493
	  FROM STATES st
7494
	 WHERE st.STATE_ID = nStateId;
7495
 
7496
 
7497
	-- Update Seq Number --
7498
	OPEN curStates;
7499
	FETCH curStates INTO recStates;
7500
 
7501
	NextSeqNum := 1;
7502
	WHILE curStates%FOUND
7503
	LOOP
7504
 
7505
		UPDATE STATES st SET
7506
		st.STATE_SEQ = NextSeqNum
7507
		WHERE st.STATE_ID = recStates.STATE_ID;
7508
 
7509
		NextSeqNum := NextSeqNum + 1;
7510
		FETCH curStates INTO recStates;
7511
	END LOOP;
7512
 
7513
	CLOSE curStates; 
7514
 
7515
 
7516
END	Remove_State;
7517
/*--------------------------------------------------------------------------------------------------*/
7518
PROCEDURE Toggle_Is_Displayed ( nStateId IN BOM_STATE.STATE_ID%TYPE,
7519
								nBomId IN BOM_STATE.BOM_ID%TYPE,
7520
								cIsDisplay IN BOM_STATE.IS_DISPLAYED%TYPE ) IS
7521
 
7522
IsDisplayed BOM_STATE.IS_DISPLAYED%TYPE;
7523
 
7524
BEGIN
7525
	/*--------------- Business Rules Here -------------------*/
7526
	/*-------------------------------------------------------*/
7527
 
7528
	-- Get Current is_displayed
7529
	/*SELECT bs.IS_DISPLAYED INTO IsDisplayed
7530
	  FROM BOM_STATE bs
7531
	 WHERE bs.BOM_ID = nBomId
7532
	   AND bs.STATE_ID = nStateId;
7533
 
7534
 
7535
	-- Toggle is_displayed
7536
	IF IsDisplayed = 'Y' THEN
7537
		IsDisplayed := 'N';
7538
	ELSE
7539
		IsDisplayed := 'Y';
7540
	END IF;*/
7541
 
7542
 
7543
	-- Update bom state
7544
	UPDATE BOM_STATE SET
7545
	IS_DISPLAYED = cIsDisplay
7546
	WHERE BOM_ID = nBomId
7547
	  AND STATE_ID = nStateId;
7548
 
7549
 
7550
END	Toggle_Is_Displayed;
7551
 
7552
/*--------------------------------------------------------------------------------------------------*/
7553
PROCEDURE Auto_Hide ( nStateId IN BOM_STATE.STATE_ID%TYPE,
7554
					  nInsertedBomId IN BOM_STATE.BOM_ID%TYPE,
7555
					  nEventValue IN SYSTEM_CONFIGURATION.ITEM_VALUE%TYPE ) IS
7556
 
7557
CURSOR curParent IS
7558
	SELECT bo.BOM_ID,
7559
		   bo.IS_READONLY,
7560
		   bo.IS_REJECTED
7561
	  FROM BOMS bo
7562
	 WHERE bo.BOM_ID IN (	
7563
	 					 SELECT bo.PARENT_BOM_ID
7564
						   FROM BOMS bo
7565
						  WHERE bo.BOM_ID = nInsertedBomId
7566
						    AND bo.BOM_ID != bo.PARENT_BOM_ID
7567
	 					);
7568
recParent curParent%ROWTYPE;	
7569
 
7570
ParentBomId BOMS.PARENT_BOM_ID%TYPE;
7571
ParentOfficial BOMS.IS_READONLY%TYPE;	
7572
ParentRejected BOMS.IS_REJECTED%TYPE;			  
7573
 
7574
BEGIN
7575
	/*--------------- Business Rules Here -------------------*/
7576
	/*-------------------------------------------------------*/
7577
 
7578
	-- Get Parent Details
7579
	OPEN curParent;
7580
	FETCH curParent INTO recParent;
7581
 
7582
	ParentBomId := recParent.BOM_ID;
7583
	ParentOfficial := recParent.IS_READONLY;
7584
	ParentRejected := recParent.IS_REJECTED;
7585
 
7586
	CLOSE curParent;
7587
 
7588
 
7589
	IF ParentOfficial = 'Y' THEN
7590
		/* Auto-Hide BOM */
7591
 
7592
		IF nEventValue = GET_SYSTEM_VALUE('enumEVENT_ON_RELEASE_TO') THEN
7593
			/* REQUIREMENT: Hide Rejected parent */
7594
 
7595
			IF ParentRejected = 'Y' THEN
7596
				-- Update bom state
7597
				UPDATE BOM_STATE SET
7598
					IS_DISPLAYED = 'N'
7599
				WHERE BOM_ID = ParentBomId
7600
				  AND STATE_ID = nStateId;
7601
 
7602
			END IF;
7603
 
7604
 
7605
		ELSIF ( nEventValue = GET_SYSTEM_VALUE('enumEVENT_ON_LOCK_BOM') )  OR  (nEventValue = GET_SYSTEM_VALUE('enumEVENT_ON_ACCEPT_BOM') ) THEN
7606
			/* REQUIREMENT: Hide Rejected or Accepted parent */
7607
 
7608
			IF NOT ParentRejected IS NULL THEN
7609
				-- Update bom state
7610
				UPDATE BOM_STATE SET
7611
					IS_DISPLAYED = 'N'
7612
				WHERE BOM_ID = ParentBomId
7613
				  AND STATE_ID = nStateId;
7614
 
7615
			END IF;
7616
 
7617
 
7618
		ELSIF ( nEventValue = GET_SYSTEM_VALUE('enumEVENT_ON_UNLOCK_BOM') )  OR  (nEventValue = GET_SYSTEM_VALUE('enumEVENT_ON_REJECT_BOM') ) THEN
7619
			/* REQUIREMENT: Show parent */
7620
 
7621
			-- Update bom state
7622
			UPDATE BOM_STATE SET
7623
				IS_DISPLAYED = 'Y'
7624
			WHERE BOM_ID = ParentBomId
7625
			  AND STATE_ID = nStateId;
7626
 
7627
		END IF;
7628
 
7629
 
7630
 
7631
	END IF;
7632
 
7633
 
7634
 
7635
 
7636
END	Auto_Hide;
7637
/*--------------------------------------------------------------------------------------------------*/
7638
 
7639
 
7640
END pk_State;
7641
 
7642
/
7643
--------------------------------------------------------
7644
--  DDL for Package Body PK_UTILS
7645
--------------------------------------------------------
7646
 
5924 dpurdie 7647
  CREATE OR REPLACE PACKAGE BODY "DEPLOYMENT_MANAGER"."PK_UTILS" 
3926 dpurdie 7648
IS
7649
/* ---------------------------------------------------------------------------
7650
    Version: 1.0.0
7651
   --------------------------------------------------------------------------- */
7652
 
7653
/*--------------------------------------------------------------------------------------------------*/
7654
PROCEDURE Clone_BOM ( nFromBomId IN BOMS.BOM_ID%TYPE,
7655
		  			  nToBomId IN BOMS.BOM_ID%TYPE,
7656
					  nUserId IN NUMBER ) IS
7657
 
7658
FromBom VARCHAR2(4000);
7659
 
7660
BEGIN
7661
	/*--------------- Business Rules Here -------------------*/
7662
	/*-------------------------------------------------------*/
7663
 
7664
	-- Define old_bom_id
7665
	UPDATE BOMS bo SET
7666
	bo.OLD_BOM_ID = nFromBomId
7667
	WHERE bo.BOM_ID = nToBomId;
7668
 
7669
	-- Copy Bom Contents
7670
	Copy_BOM_Contents ( nFromBomId, nToBomId );
7671
 
7672
 
7673
	-- Finnaly Clean old_id columns
7674
	Clean_Old_Id_Column();
7675
 
7676
 
7677
 
7678
 
7679
	/* Log BOM_TRAIL */
7680
	-- Get FromBom Details
7681
	SELECT proj.PROJ_NAME ||' / '|| br.BRANCH_NAME ||' / '|| bn.BOM_NAME ||' '|| bo.BOM_VERSION ||'.'|| BOM_LIFECYCLE
7682
		   INTO FromBom 
7683
	  FROM DM_PROJECTS proj,
7684
	  	   BOMS bo,
7685
		   BOM_NAMES bn,
7686
		   BRANCHES br
7687
	 WHERE br.PROJ_ID = proj.PROJ_ID
7688
	   AND bo.BRANCH_ID = br.BRANCH_ID
7689
	   AND bo.BOM_NAME_ID = bn.BOM_NAME_ID
7690
	   AND bo.BOM_ID = nFromBomId;
7691
 
7692
	-- Log Action
7693
	pk_Bom.Log_Bom_Trail ( nToBomId, 'COPIED: From '|| FromBom, nUserId );
7694
 
7695
 
7696
END	Clone_BOM;
7697
/*--------------------------------------------------------------------------------------------------*/
7698
PROCEDURE Copy_BOM_Contents ( nFromBomId IN BOMS.BOM_ID%TYPE,
7699
		  					  nToBomId IN BOMS.BOM_ID%TYPE ) IS
7700
 
7701
 
7702
BEGIN
7703
	/*--------------- Business Rules Here -------------------*/
7704
	/*-------------------------------------------------------*/
7705
 
7706
	-- Copy Network Nodes
7707
	Copy_Network_Node ( nFromBomId, nToBomId ); 
7708
 
7709
 
7710
	-- Copy Hardware Names
7711
	INSERT INTO HARDWARE ( HARDWARE_NAME_ID, BOM_ID, HARDWARE_NAME, TIER_NAME, OLD_HARDWARE_NAME_ID )
7712
	SELECT SEQ_HARDWARE_NAME_ID.NEXTVAL AS HARDWARE_NAME_ID, 
7713
		   nToBomId AS BOM_ID, 
7714
		   hw.HARDWARE_NAME, 
7715
		   hw.TIER_NAME, 
7716
		   hw.HARDWARE_NAME_ID AS OLD_HARDWARE_NAME_ID
7717
	  FROM HARDWARE hw
7718
	 WHERE hw.BOM_ID = nFromBomId;
7719
 
7720
 
7721
	-- Copy Hardware Matrix
7722
	INSERT INTO HARDWARE_NODE ( HARDWARE_NAME_ID, NODE_ID) 
7723
	SELECT hw.HARDWARE_NAME_ID, 
7724
		   nn.NODE_ID
7725
	  FROM HARDWARE hw,
7726
	  	   NETWORK_NODES nn,
7727
		   HARDWARE_NODE hd
7728
	 WHERE hd.NODE_ID = nn.OLD_NODE_ID
7729
	   AND hd.HARDWARE_NAME_ID = hw.OLD_HARDWARE_NAME_ID
7730
	   AND hw.BOM_ID = nToBomId;
7731
 
7732
 
7733
	-- Copy Base Environments
7734
	INSERT INTO BASE_ENV ( BASE_ENV_ID, BOS_ID, BASE_ENV_NAME, OLD_BASE_ENV_ID, BOM_ID )
7735
	SELECT SEQ_BASE_ENV_ID.NEXTVAL AS BASE_ENV_ID, 
7736
		   be.BOS_ID, 
7737
		   be.BASE_ENV_NAME, 
7738
		   be.BASE_ENV_ID AS OLD_BASE_ENV_ID, 
7739
		   nToBomId AS BOM_ID   
7740
	  FROM BASE_ENV be
7741
	 WHERE be.BOM_ID = nFromBomId;
7742
 
7743
 
7744
	-- Relink Base Environment Contents
7745
	INSERT INTO BASE_ENV_CONTENTS ( BASE_ENV_ID, PROD_ID, BASE_ENV_COMMENTS, SEQ_NUM, IS_NODE_SPEC, NOT_XML )
7746
	SELECT be.BASE_ENV_ID AS BASE_ENV_ID, 
7747
		   bec.PROD_ID, 
7748
		   bec.BASE_ENV_COMMENTS, 
7749
		   bec.SEQ_NUM,
7750
		   bec.IS_NODE_SPEC,
7751
		   bec.NOT_XML
7752
	  FROM BASE_ENV be,
7753
	  	   BASE_ENV_CONTENTS bec
7754
	 WHERE bec.BASE_ENV_ID = be.OLD_BASE_ENV_ID
7755
	   AND be.BOM_ID = nToBomId;
7756
 
7757
 
7758
    -- Copy OS
7759
	INSERT INTO OPERATING_SYSTEMS ( OS_ID, OS_NAME, NODE_ID, OS_COMMENTS, OLD_OS_ID, NODE_SPEC_FILE, NOT_XML ) 
7760
	SELECT SEQ_OS_ID.NEXTVAL AS OS_ID, 
7761
		   os.OS_NAME, 
7762
		   nn.NODE_ID AS NODE_ID, 
7763
		   os.OS_COMMENTS, 
7764
		   os.OS_ID AS OLD_OS_ID,
7765
		   os.NODE_SPEC_FILE,
7766
		   os.NOT_XML
7767
	  FROM OPERATING_SYSTEMS os,
7768
	  	   NETWORK_NODES nn,
7769
		   BOM_CONTENTS bc
7770
	 WHERE bc.NODE_ID = nn.NODE_ID
7771
	   AND os.NODE_ID = nn.OLD_NODE_ID
7772
	   AND bc.BOM_ID = nToBomId;
7773
 
7774
 
7775
 
7776
    -- Relink OS Base Environments
7777
	INSERT INTO OS_BASE_ENV ( OS_ID, BASE_ENV_ID ) 
7778
	SELECT os.OS_ID AS OS_ID,
7779
		   be.BASE_ENV_ID AS BASE_ENV_ID
7780
	  FROM OPERATING_SYSTEMS os,
7781
	  	   NETWORK_NODES nn,
7782
		   BOM_CONTENTS bc,
7783
		   OS_BASE_ENV osbe,
7784
		   BASE_ENV be
7785
	 WHERE osbe.OS_ID = os.OLD_OS_ID
7786
	   AND osbe.BASE_ENV_ID = be.OLD_BASE_ENV_ID
7787
	   AND bc.NODE_ID = nn.NODE_ID
7788
	   AND os.NODE_ID = nn.NODE_ID
7789
	   AND bc.BOM_ID = nToBomId;
7790
 
7791
 
7792
	-- Copy OS Contents
7793
	INSERT INTO OS_CONTENTS ( OS_ID, SEQ_NUM, PROD_ID, PRODUCT_COMMENTS, CHANGE_LOG_FLAG, IS_NODE_SPEC, NOT_XML ) 	  
7794
	SELECT os.OS_ID AS OS_ID, 
7795
		   osc.SEQ_NUM, 
7796
		   osc.PROD_ID, 
7797
		   osc.PRODUCT_COMMENTS, 
7798
		   osc.CHANGE_LOG_FLAG,
7799
		   osc.IS_NODE_SPEC,
7800
		   osc.NOT_XML
7801
	  FROM OPERATING_SYSTEMS os,
7802
	  	   BOM_CONTENTS bc,
7803
		   OS_CONTENTS osc
7804
	 WHERE bc.NODE_ID = os.NODE_ID
7805
	   AND osc.OS_ID = os.OLD_OS_ID
7806
	   AND bc.BOM_ID = nToBomId;
7807
 
7808
 
7809
    -- Copy Processes Config
7810
	INSERT INTO PROCESSES_CONFIG ( PROC_ID, PROD_ID, OS_ID, PKG_HEALTH_TAG, CMD_INTERFACE, PKG_OWNER, IS_INTERFACE, PROC_DESCRIPTION, PKG_ID ) 	  
7811
	SELECT pc.PROC_ID, 
7812
		   pc.PROD_ID, 
7813
		   os.OS_ID AS OS_ID, 
7814
		   pc.PKG_HEALTH_TAG, 
7815
		   pc.CMD_INTERFACE,
7816
		   pc.PKG_OWNER,
7817
		   pc.IS_INTERFACE,
7818
		   pc.PROC_DESCRIPTION,
7819
		   pc.PKG_ID 
7820
	  FROM OPERATING_SYSTEMS os,
7821
	  	   BOM_CONTENTS bc,
7822
		   PROCESSES_CONFIG pc
7823
	 WHERE bc.NODE_ID = os.NODE_ID
7824
	   AND pc.OS_ID = os.OLD_OS_ID
7825
	   AND bc.BOM_ID = nToBomId;
7826
 
7827
 
7828
	-- Copy Hide Products/Patches
7829
	INSERT INTO HIDE_PRODUCTS (OS_ID, PROD_ID)
7830
	SELECT os.OS_ID, 
7831
		   hp.PROD_ID
7832
	FROM   HIDE_PRODUCTS hp,
7833
		   OPERATING_SYSTEMS os,
7834
		   BOM_CONTENTS bc
7835
	WHERE  hp.OS_ID = os.OLD_OS_ID
7836
	AND    bc.NODE_ID = os.NODE_ID
7837
	AND    bc.BOM_ID = nToBomId ; 	   
7838
 
7839
 
7840
END	Copy_BOM_Contents;
7841
/*--------------------------------------------------------------------------------------------------*/
7842
PROCEDURE Copy_Network_Node ( nFromBomId IN BOMS.BOM_ID%TYPE,
7843
		  					  nToBomId IN BOMS.BOM_ID%TYPE,
7844
							  nFromNodeId IN NUMBER DEFAULT 0  ) IS
7845
 
7846
 
7847
BEGIN
7848
	/*--------------- Business Rules Here -------------------*/
7849
	/*-------------------------------------------------------*/
7850
 
7851
	-- Copy Network Nodes
7852
	INSERT INTO NETWORK_NODES ( NODE_ID, NODE_TYPE_ID, NODE_NAME, NODE_COMMENTS, OLD_NODE_ID, NODE_VERSION, NODE_LIFE_CYCLE )
7853
	SELECT SEQ_NODE_ID.NEXTVAL AS NODE_ID, 
7854
		   nn.NODE_TYPE_ID, 
7855
		   nn.NODE_NAME, 
7856
		   nn.NODE_COMMENTS, 
7857
		   nn.NODE_ID AS OLD_NODE_ID,
7858
		   nn.NODE_VERSION, 
7859
		   nn.NODE_LIFE_CYCLE
7860
	  FROM NETWORK_NODES nn,
7861
	  	   BOM_CONTENTS bc
7862
	 WHERE bc.NODE_ID = nn.NODE_ID
7863
	   AND (
7864
	   	    ( bc.NODE_ID = bc.NODE_ID  AND  nFromNodeId = 0 ) OR
7865
			( bc.NODE_ID = nFromNodeId     AND  nFromNodeId != 0 )
7866
	   	   )
7867
	   AND bc.BOM_ID = nFromBomId;
7868
 
7869
 
7870
	-- Relink Bom Contents
7871
	INSERT INTO BOM_CONTENTS ( BOM_ID, NODE_ID, SEQ_NUM)
7872
	SELECT bo.BOM_ID,
7873
		   nn.NODE_ID,
7874
		   bc.SEQ_NUM
7875
	  FROM BOMS bo,
7876
	  	   BOM_CONTENTS bc,
7877
		   NETWORK_NODES nn
7878
	 WHERE bc.BOM_ID = bo.OLD_BOM_ID
7879
	   AND bc.NODE_ID = nn.OLD_NODE_ID
7880
	   AND (
7881
	   	    ( nn.OLD_NODE_ID = nn.OLD_NODE_ID  AND  nFromNodeId = 0 ) OR
7882
			( nn.OLD_NODE_ID = nFromNodeId     AND  nFromNodeId != 0 )
7883
	   	   )
7884
	   AND bo.BOM_ID = nToBomId;  
7885
 
7886
END	Copy_Network_Node;
7887
/*--------------------------------------------------------------------------------------------------*/
7888
PROCEDURE Paste_Products ( sProdIdList IN VARCHAR2,
7889
						   nFromOsId IN OS_CONTENTS.OS_ID%TYPE, 
7890
						   nToOsId IN OS_CONTENTS.OS_ID%TYPE ) IS
7891
 
7892
MaxSeqNum NUMBER;						 
7893
 
7894
BEGIN
7895
	/*--------------- Business Rules Here -------------------*/
7896
	/*-------------------------------------------------------*/
7897
 
7898
	-- Get Max seq_num
7899
	SELECT COUNT(*) INTO MaxSeqNum
7900
	  FROM OS_CONTENTS osc
7901
	 WHERE osc.OS_ID = nToOsId;
7902
 
7903
 
7904
	-- Copy OS Contents
7905
	INSERT INTO OS_CONTENTS ( OS_ID, SEQ_NUM, PROD_ID, PRODUCT_COMMENTS, CHANGE_LOG_FLAG ) 	  
7906
	SELECT nToOsId AS OS_ID, 
7907
		   ROWNUM + MaxSeqNum, 
7908
		   osc.PROD_ID, 
7909
		   osc.PRODUCT_COMMENTS, 
7910
		   osc.CHANGE_LOG_FLAG
7911
	  FROM OS_CONTENTS osc
7912
	 WHERE osc.OS_ID = nFromOsId
7913
	   AND osc.PROD_ID IN (
7914
						   SELECT *
7915
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
7916
	   	   			   	   );
7917
 
7918
 
7919
    -- Copy Processes Config
7920
	INSERT INTO PROCESSES_CONFIG ( PROC_ID, PROD_ID, OS_ID, PKG_HEALTH_TAG, CMD_INTERFACE ) 	  
7921
	SELECT pc.PROC_ID, 
7922
		   pc.PROD_ID, 
7923
		   nToOsId AS OS_ID, 
7924
		   pc.PKG_HEALTH_TAG, 
7925
		   pc.CMD_INTERFACE 
7926
	  FROM OPERATING_SYSTEMS os,
7927
	  	   BOM_CONTENTS bc,
7928
		   PROCESSES_CONFIG pc
7929
	 WHERE bc.NODE_ID = os.NODE_ID
7930
	   AND pc.OS_ID = os.OLD_OS_ID
7931
	   AND bc.BOM_ID = nFromOsId
7932
	   AND pc.PROD_ID IN (
7933
						   SELECT *
7934
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
7935
	   	   			   	   );
7936
 
7937
 
7938
    EXCEPTION
7939
    WHEN DUP_VAL_ON_INDEX
7940
	THEN		
7941
		RAISE_APPLICATION_ERROR (-20000, 'Cannot Paste Duplicate Product.');	
7942
 
7943
END	Paste_Products;
7944
/*--------------------------------------------------------------------------------------------------*/
7945
PROCEDURE Paste_Products_To_Base_Env ( sProdIdList IN VARCHAR2,
7946
									   nFromOsId IN OS_CONTENTS.OS_ID%TYPE, 
7947
									   nToBaseEnvId IN BASE_ENV.BASE_ENV_ID%TYPE ) IS
7948
 
7949
MaxSeqNum NUMBER;						 
7950
 
7951
BEGIN
7952
	/*--------------- Business Rules Here -------------------*/
7953
	/*-------------------------------------------------------*/
7954
 
7955
	-- Get Max seq_num
7956
	SELECT COUNT(*) INTO MaxSeqNum
7957
	  FROM BASE_ENV_CONTENTS bec
7958
	 WHERE bec.BASE_ENV_ID = nToBaseEnvId;
7959
 
7960
 
7961
	-- Copy OS Contents
7962
	INSERT INTO BASE_ENV_CONTENTS ( BASE_ENV_ID, PROD_ID, BASE_ENV_COMMENTS, SEQ_NUM ) 	  
7963
	SELECT nToBaseEnvId AS BASE_ENV_ID, 
7964
		   osc.PROD_ID,
7965
		   osc.PRODUCT_COMMENTS, 
7966
		   ROWNUM + MaxSeqNum 
7967
	  FROM OS_CONTENTS osc
7968
	 WHERE osc.OS_ID = nFromOsId
7969
	   AND osc.PROD_ID IN (
7970
						   SELECT *
7971
					   	     FROM THE ( SELECT CAST( IN_LIST_NUMBER( sProdIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
7972
	   	   			   	   );
7973
 
7974
 
7975
        EXCEPTION
7976
    WHEN DUP_VAL_ON_INDEX
7977
	THEN		
7978
		RAISE_APPLICATION_ERROR (-20000, 'Cannot Paste Duplicate Product.');	
7979
 
7980
END	Paste_Products_To_Base_Env;
7981
/*--------------------------------------------------------------------------------------------------*/
7982
PROCEDURE Paste_Os ( sOsIdList IN VARCHAR2,
7983
					 nFromNodeId IN OPERATING_SYSTEMS.NODE_ID%TYPE,
7984
					 nToNodeId IN OPERATING_SYSTEMS.NODE_ID%TYPE ) IS
7985
 
7986
ToBomId NUMBER;					 
7987
 
7988
BEGIN
7989
	/*--------------- Business Rules Here -------------------*/
7990
	/*-------------------------------------------------------*/
7991
 
7992
	-- Get ToBomId
7993
	SELECT bc.BOM_ID INTO ToBomId
7994
	  FROM BOM_CONTENTS bc
7995
 	 WHERE bc.NODE_ID = nToNodeId;
7996
 
7997
 
7998
    -- Copy OS
7999
	INSERT INTO OPERATING_SYSTEMS ( OS_ID, OS_NAME, NODE_ID, OS_COMMENTS, OLD_OS_ID ) 
8000
	SELECT SEQ_OS_ID.NEXTVAL AS OS_ID, 
8001
		   os.OS_NAME, 
8002
		   nToNodeId AS NODE_ID, 
8003
		   os.OS_COMMENTS, 
8004
		   os.OS_ID AS OLD_OS_ID
8005
	  FROM OPERATING_SYSTEMS os
8006
	 WHERE os.NODE_ID = nFromNodeId
8007
	   AND os.OS_ID IN (
8008
					   	  SELECT *
8009
				   	     	FROM THE ( SELECT CAST( IN_LIST_NUMBER( sOsIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
8010
   	   			   	    );
8011
 
8012
 
8013
	-- Paste OS Contents
8014
	Paste_OS_Contents();
8015
 
8016
 
8017
 
8018
	-- Finnaly Clean old_id columns
8019
	Clean_Old_Id_Column();
8020
 
8021
 
8022
	EXCEPTION
8023
    WHEN DUP_VAL_ON_INDEX
8024
	THEN		
8025
		RAISE_APPLICATION_ERROR (-20000, 'Cannot Paste Duplicate Operating Systems.');	
8026
 
8027
END	Paste_Os;
8028
/*--------------------------------------------------------------------------------------------------*/
8029
PROCEDURE Paste_Node ( sNodeIdList IN VARCHAR2,
8030
					   nFromBomId IN OPERATING_SYSTEMS.NODE_ID%TYPE,
8031
					   nToBomId IN OPERATING_SYSTEMS.NODE_ID%TYPE ) IS
8032
 
8033
CURSOR curNodeName IS -- Check Node Name Duplicates			
8034
	SELECT nn.NODE_ID
8035
	  FROM (
8036
	  		SELECT UPPER( nn.NODE_NAME ) AS NODE_NAME
8037
		      FROM NETWORK_NODES nn
8038
		     WHERE nn.NODE_ID IN (
8039
		  							SELECT *
8040
		     						  FROM THE ( SELECT CAST( IN_LIST_NUMBER( sNodeIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual )
8041
		  					     )  
8042
	  	   ) nname,
8043
		   BOM_CONTENTS bc,
8044
	  	   NETWORK_NODES nn	
8045
	 WHERE bc.NODE_ID = nn.NODE_ID
8046
	   AND bc.BOM_ID = nToBomId
8047
	   AND UPPER( nn.NODE_NAME ) = UPPER( nname.NODE_NAME );
8048
recNodeName curNodeName%ROWTYPE;	   					 
8049
 
8050
BEGIN
8051
	/*--------------- Business Rules Here -------------------*/
8052
	OPEN curNodeName;
8053
    FETCH curNodeName INTO recNodeName;
8054
 
8055
    IF curNodeName%FOUND
8056
    THEN
8057
		RAISE_APPLICATION_ERROR (-20000, 'Cannot Paste Duplicate Network Nodes.'   );
8058
 
8059
	END IF;
8060
 
8061
	CLOSE curNodeName;
8062
	/*-------------------------------------------------------*/
8063
 
8064
	-- Copy Network Nodes
8065
	INSERT INTO NETWORK_NODES ( NODE_ID, NODE_TYPE_ID, NODE_NAME, NODE_COMMENTS, OLD_NODE_ID, NODE_VERSION, NODE_LIFE_CYCLE )
8066
	SELECT SEQ_NODE_ID.NEXTVAL AS NODE_ID, 
8067
		   nn.NODE_TYPE_ID, 
8068
		   nn.NODE_NAME, 
8069
		   nn.NODE_COMMENTS, 
8070
		   nn.NODE_ID AS OLD_NODE_ID,
8071
		   nn.NODE_VERSION, 
8072
		   nn.NODE_LIFE_CYCLE
8073
	  FROM NETWORK_NODES nn,
8074
	  	   BOM_CONTENTS bc
8075
	 WHERE bc.NODE_ID = nn.NODE_ID
8076
	   AND bc.BOM_ID = nFromBomId
8077
	   AND nn.NODE_ID IN (
8078
					   	  SELECT *
8079
				   	     	FROM THE ( SELECT CAST( IN_LIST_NUMBER( sNodeIdList ) AS DEPMGR_NUMBER_TAB_t ) FROM dual ) 
8080
   	   			   	     );
8081
 
8082
 
8083
	-- Relink Bom Contents
8084
	INSERT INTO BOM_CONTENTS ( BOM_ID, NODE_ID )
8085
	SELECT nToBomId,
8086
		   nn.NODE_ID
8087
	  FROM NETWORK_NODES nn
8088
	 WHERE NOT nn.OLD_NODE_ID IS NULL;
8089
 
8090
 
8091
    -- Copy OS
8092
	INSERT INTO OPERATING_SYSTEMS ( OS_ID, OS_NAME, NODE_ID, OS_COMMENTS, OLD_OS_ID ) 
8093
	SELECT SEQ_OS_ID.NEXTVAL AS OS_ID, 
8094
		   os.OS_NAME, 
8095
		   nn.NODE_ID, 
8096
		   os.OS_COMMENTS, 
8097
		   os.OS_ID AS OLD_OS_ID
8098
	  FROM OPERATING_SYSTEMS os,
8099
	  	   NETWORK_NODES nn
8100
	 WHERE os.NODE_ID = nn.OLD_NODE_ID;
8101
 
8102
 
8103
	-- Paste OS Contents
8104
	Paste_OS_Contents();
8105
 
8106
 
8107
 
8108
	-- Finnaly Clean old_id columns
8109
	Clean_Old_Id_Column();
8110
 
8111
 
8112
END	Paste_Node;
8113
/*--------------------------------------------------------------------------------------------------*/
8114
PROCEDURE Paste_OS_Contents IS
8115
 
8116
 
8117
BEGIN
8118
	/*--------------- Business Rules Here -------------------*/
8119
	/*-------------------------------------------------------*/
8120
 
8121
 
8122
	/* Base environment copy is a bit more complex when is copied from different bom. TODO */   
8123
	/* CODE HERE */
8124
 
8125
	-- Copy OS Contents
8126
	INSERT INTO OS_CONTENTS ( OS_ID, SEQ_NUM, PROD_ID, PRODUCT_COMMENTS, CHANGE_LOG_FLAG ) 	  
8127
	SELECT os.OS_ID AS OS_ID, 
8128
		   osc.SEQ_NUM, 
8129
		   osc.PROD_ID, 
8130
		   osc.PRODUCT_COMMENTS, 
8131
		   osc.CHANGE_LOG_FLAG
8132
	  FROM OS_CONTENTS osc,
8133
	  	   OPERATING_SYSTEMS os
8134
	 WHERE osc.OS_ID = os.OLD_OS_ID;
8135
 
8136
 
8137
    -- Copy Processes Config
8138
	INSERT INTO PROCESSES_CONFIG ( PROC_ID, PROD_ID, OS_ID, PKG_HEALTH_TAG, CMD_INTERFACE, PKG_ID ) 	  
8139
	SELECT pc.PROC_ID, 
8140
		   pc.PROD_ID, 
8141
		   os.OS_ID AS OS_ID, 
8142
		   pc.PKG_HEALTH_TAG, 
8143
		   pc.CMD_INTERFACE,
8144
		   pc.PKG_ID 
8145
	  FROM PROCESSES_CONFIG pc,
8146
	  	   OPERATING_SYSTEMS os
8147
	 WHERE pc.OS_ID = os.OLD_OS_ID;
8148
 
8149
 
8150
 
8151
END	Paste_OS_Contents;
8152
/*--------------------------------------------------------------------------------------------------*/
8153
PROCEDURE Clean_Old_Id_Column IS
8154
 
8155
 
8156
BEGIN
8157
	/*--------------- Business Rules Here -------------------*/
8158
	/*-------------------------------------------------------*/
8159
 
8160
	-- Clean all old_id columns
8161
	UPDATE BOMS SET OLD_BOM_ID = NULL;
8162
	UPDATE NETWORK_NODES SET OLD_NODE_ID = NULL;
8163
	UPDATE HARDWARE SET OLD_HARDWARE_NAME_ID = NULL;
8164
	UPDATE OPERATING_SYSTEMS SET OLD_OS_ID = NULL;
8165
	UPDATE BASE_ENV SET OLD_BASE_ENV_ID = NULL;
8166
 
8167
 
8168
 
8169
END	Clean_Old_Id_Column;
8170
/*--------------------------------------------------------------------------------------------------*/
8171
PROCEDURE Log_Rejection_Trail ( nEnumEntityType IN REJECTION_TRAIL.ENUM_ENTITY_TYPE%TYPE,
8172
								nEntityId IN REJECTION_TRAIL.ENTITY_ID%TYPE,
8173
								cIsRejected IN REJECTION_TRAIL.IS_REJECTED%TYPE,
8174
								nUserId IN REJECTION_TRAIL.USER_ID%TYPE,
8175
								sComments IN REJECTION_TRAIL.COMMENTS%TYPE DEFAULT NULL ) IS
8176
 
8177
nNextRejectSeq REJECTION_TRAIL.REJECT_SEQ%TYPE;
8178
 
8179
CURSOR curRejectTrail IS
8180
	SELECT MAX(rt.REJECT_SEQ) AS LAST_REJECT_SEQ
8181
	  FROM REJECTION_TRAIL rt
8182
	 WHERE rt.ENTITY_ID = nEntityId
8183
	   AND rt.ENUM_ENTITY_TYPE = nEnumEntityType;
8184
recRejectTrail curRejectTrail%ROWTYPE;
8185
 
8186
BEGIN
8187
	/*--------------- Business Rules Here -------------------*/
8188
	/*-------------------------------------------------------*/
8189
 
8190
	-- Get nNextRejectSeq
8191
	OPEN curRejectTrail;
8192
	FETCH curRejectTrail INTO recRejectTrail;
8193
 
8194
	nNextRejectSeq := 1;
8195
	IF recRejectTrail.LAST_REJECT_SEQ IS NOT NULL THEN
8196
	   nNextRejectSeq := recRejectTrail.LAST_REJECT_SEQ + 1;
8197
	END IF;
8198
 
8199
	CLOSE curRejectTrail;
8200
 
8201
 
8202
 
8203
	-- Insert Rejection Comment
8204
	INSERT INTO REJECTION_TRAIL ( ENUM_ENTITY_TYPE, ENTITY_ID, REJECT_SEQ, IS_REJECTED, COMMENTS, DATE_TIME_STAMP, USER_ID )
8205
	VALUES ( 
8206
		   nEnumEntityType,
8207
		   nEntityId,
8208
		   nNextRejectSeq,
8209
		   cIsRejected,
8210
		   sComments,
8211
		   GET_DATETIME(),
8212
		   nUserId
8213
		    );
8214
 
8215
END	Log_Rejection_Trail;
8216
/*--------------------------------------------------------------------------------------------------*/
8217
PROCEDURE Log_Action ( nUserId IN ACTION_TRAIL.USER_ID%TYPE, 
8218
					   nEvent IN ACTION_TRAIL.ACTION_EVENT%TYPE,
8219
					   sMethod IN ACTION_TRAIL.METHOD_CALL%TYPE DEFAULT NULL,
8220
					   sActionScript IN ACTION_TRAIL.ACTION_SCRIPT%TYPE DEFAULT NULL,
8221
					   sDescription IN ACTION_TRAIL.ACTION_DESCRIPTION%TYPE DEFAULT NULL ) IS
8222
 
8223
BEGIN
8224
	/*--------------- Business Rules Here -------------------*/
8225
	/*-------------------------------------------------------*/
8226
 
8227
	INSERT INTO ACTION_TRAIL ( ACTION_STAMP, USER_ID, ACTION_EVENT, METHOD_CALL, ACTION_SCRIPT, ACTION_DESCRIPTION )
8228
	VALUES (
8229
		    TO_DATE( TO_CHAR( SYSDATE,'DD-MON-YYYY HH24:MI:SS' ),'DD-MON-YYYY HH24:MI:SS' ),
8230
			nUserId,
8231
			nEvent,
8232
			sMethod,
8233
			sActionScript,
8234
			sDescription
8235
		   );
8236
 
8237
END	Log_Action;
8238
/*--------------------------------------------------------------------------------------------------*/
8239
 
8240
 
8241
END pk_Utils;
8242
 
8243
/
8244
--------------------------------------------------------
8245
--  DDL for Procedure ADD_PROCESS
8246
--------------------------------------------------------
8247
set define off;
8248
 
5924 dpurdie 8249
  CREATE OR REPLACE PROCEDURE "DEPLOYMENT_MANAGER"."ADD_PROCESS" (nProcId IN PROCESSES_CONFIG.PROC_ID%TYPE,
3926 dpurdie 8250
	   	  		  						 sHealthTag IN PROCESSES_CONFIG.PKG_HEALTH_TAG%TYPE,
8251
	   	  		  						 nOsId IN PROCESSES_CONFIG.OS_ID%TYPE,
8252
										 sCmdInterface IN PROCESSES_CONFIG.CMD_INTERFACE%TYPE,
8253
										 sPkgOwner IN PROCESSES_CONFIG.PKG_OWNER%TYPE,
8254
										 sIsInterface IN PROCESSES_CONFIG.IS_INTERFACE%TYPE,
8255
										 nProdId IN PROCESSES_CONFIG.PROD_ID%TYPE,
8256
										 nUserId IN NUMBER) IS
8257
 
8258
 
8259
PkgName VARCHAR2(100);
8260
nPkgId	NUMBER;										 
8261
 
8262
 
8263
/*Rupesh Release 6/02/2006*/
8264
BEGIN
8265
 
8266
	 SELECT PKG.PKG_NAME, PKG.PKG_ID INTO PkgName, nPkgId
8267
	 FROM PACKAGE_VERSIONS PV, PACKAGES PKG
8268
	 WHERE PV.PV_ID = nProdId
8269
	 AND PKG.PKG_ID = PV.PKG_ID;
8270
 
8271
	 INSERT INTO PROCESSES_CONFIG (PROC_ID, PKG_HEALTH_TAG, OS_ID, CMD_INTERFACE, PKG_OWNER, IS_INTERFACE, PROD_ID, PKG_ID )
8272
	 VALUES (nProcId, sHealthTag, nOsId, sCmdInterface, sPkgOwner, sIsInterface, nProdId, nPkgId);
8273
 
8274
 
8275
 
8276
	-- Log Action --
8277
	pk_Bom.Log_Os_Trail ( nOsId,  
8278
						  'Added process with health tag '|| sHealthTag ||' for product '|| PkgName,
8279
						  nUserId );
8280
 
8281
 
8282
END ADD_PROCESS;
8283
 
8284
/
8285
--------------------------------------------------------
8286
--  DDL for Procedure LOG_ACTION
8287
--------------------------------------------------------
8288
set define off;
8289
 
5924 dpurdie 8290
  CREATE OR REPLACE PROCEDURE "DEPLOYMENT_MANAGER"."LOG_ACTION" 
8291
                            (
8292
                             nPvId                IN PACKAGE_VERSIONS.PV_ID%TYPE,
8293
										         enumActionTypeName   IN ACTION_TYPE.NAME%TYPE,
8294
                             nUserId              IN ACTION_LOG.USER_ID%TYPE,
8295
										         sAdditionalComments  IN ACTION_LOG.DESCRIPTION%TYPE DEFAULT NULL
8296
                            )
8297
IS
3926 dpurdie 8298
/* ---------------------------------------------------------------------------
8299
    Version: 3.0
8300
   --------------------------------------------------------------------------- */
8301
 
8302
    ActionTypeId NUMBER;
8303
 
8304
BEGIN
5924 dpurdie 8305
  -- Get Action Type FK
8306
  SELECT act.ACTTYPE_ID INTO ActionTypeId
8307
    FROM ACTION_TYPE act
8308
  WHERE act.NAME = enumActionTypeName;
3926 dpurdie 8309
 
5924 dpurdie 8310
  INSERT INTO ACTION_LOG ( USER_ID, PV_ID, DESCRIPTION, ACTTYPE_ID )
8311
                  VALUES ( nUserId, nPvId, sAdditionalComments, ActionTypeId );
3926 dpurdie 8312
END Log_Action;
8313
 
8314
/
8315
--------------------------------------------------------
8316
--  DDL for Procedure NEW_UNIT_TEST
8317
--------------------------------------------------------
8318
set define off;
8319
 
5924 dpurdie 8320
  CREATE OR REPLACE PROCEDURE "DEPLOYMENT_MANAGER"."NEW_UNIT_TEST" ( nPv_id IN NUMBER,
3926 dpurdie 8321
                                            nTestTypeId IN UNIT_TESTS.TEST_TYPES_FK%TYPE,
8322
                                            sTest_summary IN UNIT_TESTS.TEST_SUMMARY%TYPE,
8323
                                            sDpkg_path IN VARCHAR2,
8324
                                            sResults IN VARCHAR2,
8325
                                            sCompletion_date IN VARCHAR2,
8326
                                            nCompleted_by IN NUMBER,
8327
											enumTEST_TYPE_AUTOMATIC IN NUMBER,
8328
											enumTEST_TYPE_NOT_DONE IN NUMBER,
8329
											outFileName OUT VARCHAR2
8330
                                           ) IS
8331
/* ---------------------------------------------------------------------------
8332
    Version: 3.2.0
8333
   --------------------------------------------------------------------------- */
8334
 
8335
   	FILENAME_PREFIX CONSTANT VARCHAR2(50) := 'DM_TEST';
8336
 
8337
    newID NUMBER;
8338
    ResultsURL UNIT_TESTS.RESULTS_URL%TYPE DEFAULT NULL;
8339
    ResultsAttachment UNIT_TESTS.RESULTS_ATTACHMENT_NAME%TYPE DEFAULT NULL;
8340
 
8341
BEGIN
8342
 
8343
	-- Get new ID --
8344
   	SELECT SEQ_UNIT_TESTS.NEXTVAL INTO newID FROM DUAL;
8345
 
8346
 
8347
       	IF (sResults <> '') OR ( NOT sResults IS NULL ) THEN
8348
        	outFileName := sResults;
8349
    		ResultsAttachment := sDpkg_path || '/' || outFileName;
8350
        END IF;
8351
 
8352
 
8353
	-- Remove NOT_DONE entry if exists
8354
	DELETE FROM UNIT_TESTS
8355
	 WHERE pv_id = nPv_id
8356
	   AND test_types_fk = enumTEST_TYPE_NOT_DONE;
8357
 
8358
	--- Add Additional Note ---
8359
    INSERT INTO UNIT_TESTS ( TEST_ID,
8360
								PV_ID,
8361
								TEST_TYPES_FK,
8362
								TEST_SUMMARY,
8363
								COMPLETION_DATE,
8364
								COMPLETED_BY,
8365
								RESULTS_URL,
8366
								RESULTS_ATTACHMENT_NAME )
8367
    VALUES (
8368
       	newID,
8369
           nPv_id,
8370
           nTestTypeId,
8371
           sTest_summary,
8372
           SYSDATE(),
8373
           nCompleted_by,
8374
           ResultsURL,
8375
           ResultsAttachment );
8376
 
8377
END New_Unit_Test;
8378
 
8379
/
8380
--------------------------------------------------------
8381
--  DDL for Procedure SP_GET_TOC
8382
--------------------------------------------------------
8383
set define off;
8384
 
5924 dpurdie 8385
  CREATE OR REPLACE PROCEDURE "DEPLOYMENT_MANAGER"."SP_GET_TOC" (toc_Cursor IN OUT PK_BOM_RPT.TOC_Type,Test_Parameter IN varchar2)
3926 dpurdie 8386
AS
8387
  LAST_PAGE INTEGER;
8388
  BEGIN
8389
       DELETE FROM TableOfContents;
8390
       COMMIT;
8391
       EXECUTE IMMEDIATE Test_Parameter;
8392
       SELECT cast(MAX(PAGE) as INTEGER) into LAST_PAGE FROM TableOfContents;
8393
       LAST_PAGE := LAST_PAGE + 2;
8394
       insert into tableofcontents
8395
       values
8396
       ('Base Configurations',LAST_PAGE,GET_DATE());
8397
       COMMIT;
8398
  	   OPEN toc_Cursor FOR
8399
	   	 SELECT * FROM TableOfContents;
8400
END sp_get_toc;
8401
 
8402
 
8403
/
8404
--------------------------------------------------------
8405
--  DDL for Procedure WRITE_PRODUCTION_HISTORY
8406
--------------------------------------------------------
8407
set define off;
8408
 
5924 dpurdie 8409
  CREATE OR REPLACE PROCEDURE "DEPLOYMENT_MANAGER"."WRITE_PRODUCTION_HISTORY" (nBomId IN NUMBER,
3926 dpurdie 8410
	   	  		  									  sBomName IN VARCHAR2,
8411
													  sNodeName IN VARCHAR2,
8412
													  sComment IN VARCHAR2,
8413
													  nUserId IN NUMBER
8414
	   	  		  									  )IS
8415
 
8416
/******************************************************************************
8417
   NAME:       WRITE_PRODUCTION_HISTORY
8418
   PURPOSE:    
8419
 
8420
   REVISIONS:
8421
   Ver        Date        Author           Description
8422
   ---------  ----------  ---------------  ------------------------------------
8423
   1.0        6/07/2006          1. Created this procedure.
8424
 
8425
   NOTES:
8426
 
8427
   Automatically available Auto Replace Keywords:
8428
      Object Name:     WRITE_PRODUCTION_HISTORY
8429
      Sysdate:         6/07/2006
8430
      Date and Time:   6/07/2006, 11:52:11 AM, and 6/07/2006 11:52:11 AM
8431
      Username:         (set in TOAD Options, Procedure Editor)
8432
      Table Name:       (set in the "New PL/SQL Object" dialog)
8433
 
8434
******************************************************************************/
8435
BEGIN
5924 dpurdie 8436
   NULL;
8437
   --INSERT INTO PRODUCTION_HISTORY (BOM_ID, BOM_NAME, NODE_NAME, COMMENTS, DATE_TIME_STAMP, USER_ID)
8438
   --VALUES (nBomId, sBomName, sNodeName, sComment, GET_DATETIME(), nUserId);
3926 dpurdie 8439
 
8440
 
8441
END WRITE_PRODUCTION_HISTORY;
8442
 
8443
/
4534 dpurdie 8444
--------------------------------------------------------
8445
--  DDL for Synonymn APPLICATIONS
8446
--------------------------------------------------------
8447
 
5924 dpurdie 8448
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."APPLICATIONS" FOR "ACCESS_MANAGER"."APPLICATIONS";
4534 dpurdie 8449
--------------------------------------------------------
8450
--  DDL for Synonymn APPLICATION_PAGES
8451
--------------------------------------------------------
8452
 
5924 dpurdie 8453
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."APPLICATION_PAGES" FOR "ACCESS_MANAGER"."APPLICATION_PAGES";
4534 dpurdie 8454
--------------------------------------------------------
8455
--  DDL for Synonymn CONTROL_OBJECTS
8456
--------------------------------------------------------
8457
 
5924 dpurdie 8458
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."CONTROL_OBJECTS" FOR "ACCESS_MANAGER"."CONTROL_OBJECTS";
4534 dpurdie 8459
--------------------------------------------------------
8460
--  DDL for Synonymn CQ_ISSUES
8461
--------------------------------------------------------
8462
 
5924 dpurdie 8463
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."CQ_ISSUES" FOR "RELEASE_MANAGER"."CQ_ISSUES";
4534 dpurdie 8464
--------------------------------------------------------
8465
--  DDL for Synonymn DATA_PERMISSIONS
8466
--------------------------------------------------------
8467
 
5924 dpurdie 8468
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."DATA_PERMISSIONS" FOR "ACCESS_MANAGER"."DATA_PERMISSIONS";
4534 dpurdie 8469
--------------------------------------------------------
8470
--  DDL for Synonymn DATA_TABLES
8471
--------------------------------------------------------
8472
 
5924 dpurdie 8473
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."DATA_TABLES" FOR "ACCESS_MANAGER"."DATA_TABLES";
4534 dpurdie 8474
--------------------------------------------------------
8475
--  DDL for Synonymn JIRA_ISSUES
8476
--------------------------------------------------------
8477
 
5924 dpurdie 8478
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."JIRA_ISSUES" FOR "RELEASE_MANAGER"."JIRA_ISSUES";
4534 dpurdie 8479
--------------------------------------------------------
8480
--  DDL for Synonymn PACKAGES
8481
--------------------------------------------------------
8482
 
5924 dpurdie 8483
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PACKAGES" FOR "RELEASE_MANAGER"."PACKAGES";
4534 dpurdie 8484
--------------------------------------------------------
8485
--  DDL for Synonymn PACKAGE_DEPENDENCIES
8486
--------------------------------------------------------
8487
 
5924 dpurdie 8488
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PACKAGE_DEPENDENCIES" FOR "RELEASE_MANAGER"."PACKAGE_DEPENDENCIES";
4534 dpurdie 8489
--------------------------------------------------------
8490
--  DDL for Synonymn PACKAGE_PATCHES
8491
--------------------------------------------------------
8492
 
5924 dpurdie 8493
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PACKAGE_PATCHES" FOR "RELEASE_MANAGER"."PACKAGE_PATCHES";
4534 dpurdie 8494
--------------------------------------------------------
8495
--  DDL for Synonymn PACKAGE_VERSIONS
8496
--------------------------------------------------------
8497
 
5924 dpurdie 8498
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PACKAGE_VERSIONS" FOR "RELEASE_MANAGER"."PACKAGE_VERSIONS";
4534 dpurdie 8499
--------------------------------------------------------
8500
--  DDL for Synonymn PAGE_CONTROL_OBJECTS
8501
--------------------------------------------------------
8502
 
5924 dpurdie 8503
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PAGE_CONTROL_OBJECTS" FOR "ACCESS_MANAGER"."PAGE_CONTROL_OBJECTS";
4534 dpurdie 8504
--------------------------------------------------------
8505
--  DDL for Synonymn PERMISSION_TYPES
8506
--------------------------------------------------------
8507
 
5924 dpurdie 8508
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PERMISSION_TYPES" FOR "ACCESS_MANAGER"."PERMISSION_TYPES";
4534 dpurdie 8509
--------------------------------------------------------
8510
--  DDL for Synonymn PK_AMUTILS
8511
--------------------------------------------------------
8512
 
5924 dpurdie 8513
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PK_AMUTILS" FOR "ACCESS_MANAGER"."PK_AMUTILS";
4534 dpurdie 8514
--------------------------------------------------------
8515
--  DDL for Synonymn PK_SECURITY
8516
--------------------------------------------------------
8517
 
5924 dpurdie 8518
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PK_SECURITY" FOR "ACCESS_MANAGER"."PK_SECURITY";
4534 dpurdie 8519
--------------------------------------------------------
8520
--  DDL for Synonymn PLATFORMS
8521
--------------------------------------------------------
8522
 
5924 dpurdie 8523
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PLATFORMS" FOR "RELEASE_MANAGER"."PLATFORMS";
4534 dpurdie 8524
--------------------------------------------------------
8525
--  DDL for Synonymn PROCESSES
8526
--------------------------------------------------------
8527
 
5924 dpurdie 8528
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PROCESSES" FOR "RELEASE_MANAGER"."PROCESSES";
4534 dpurdie 8529
--------------------------------------------------------
8530
--  DDL for Synonymn PRODUCT_COMPONENTS
8531
--------------------------------------------------------
8532
 
5924 dpurdie 8533
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PRODUCT_COMPONENTS" FOR "RELEASE_MANAGER"."PRODUCT_COMPONENTS";
4534 dpurdie 8534
--------------------------------------------------------
8535
--  DDL for Synonymn PROJECTS
8536
--------------------------------------------------------
8537
 
5924 dpurdie 8538
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PROJECTS" FOR "RELEASE_MANAGER"."PROJECTS";
4534 dpurdie 8539
--------------------------------------------------------
8540
--  DDL for Synonymn PROJECT_EXTENTIONS
8541
--------------------------------------------------------
8542
 
5924 dpurdie 8543
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."PROJECT_EXTENTIONS" FOR "RELEASE_MANAGER"."PROJECT_EXTENTIONS";
4534 dpurdie 8544
--------------------------------------------------------
8545
--  DDL for Synonymn RELEASE_CONTENT
8546
--------------------------------------------------------
8547
 
5924 dpurdie 8548
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."RELEASE_CONTENT" FOR "RELEASE_MANAGER"."RELEASE_CONTENT";
4534 dpurdie 8549
--------------------------------------------------------
8550
--  DDL for Synonymn RELEASE_TAGS
8551
--------------------------------------------------------
8552
 
5924 dpurdie 8553
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."RELEASE_TAGS" FOR "RELEASE_MANAGER"."RELEASE_TAGS";
4534 dpurdie 8554
--------------------------------------------------------
8555
--  DDL for Synonymn RM_USERS
8556
--------------------------------------------------------
8557
 
5924 dpurdie 8558
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."RM_USERS" FOR "RELEASE_MANAGER"."USERS";
4534 dpurdie 8559
--------------------------------------------------------
8560
--  DDL for Synonymn ROLES
8561
--------------------------------------------------------
8562
 
5924 dpurdie 8563
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."ROLES" FOR "ACCESS_MANAGER"."ROLES";
4534 dpurdie 8564
--------------------------------------------------------
8565
--  DDL for Synonymn ROLE_PRIVILEGES
8566
--------------------------------------------------------
8567
 
5924 dpurdie 8568
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."ROLE_PRIVILEGES" FOR "ACCESS_MANAGER"."ROLE_PRIVILEGES";
4534 dpurdie 8569
--------------------------------------------------------
8570
--  DDL for Synonymn SEED_PACKAGE_NAMES_VERSIONS
8571
--------------------------------------------------------
8572
 
5924 dpurdie 8573
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."SEED_PACKAGE_NAMES_VERSIONS" FOR "RELEASE_MANAGER"."SEED_PACKAGE_NAMES_VERSIONS";
4534 dpurdie 8574
--------------------------------------------------------
8575
--  DDL for Synonymn USERS
8576
--------------------------------------------------------
8577
 
5924 dpurdie 8578
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."USERS" FOR "ACCESS_MANAGER"."USERS";
4534 dpurdie 8579
--------------------------------------------------------
8580
--  DDL for Synonymn USER_APPLICATIONS
8581
--------------------------------------------------------
8582
 
5924 dpurdie 8583
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."USER_APPLICATIONS" FOR "ACCESS_MANAGER"."USER_APPLICATIONS";
4534 dpurdie 8584
--------------------------------------------------------
8585
--  DDL for Synonymn USER_ROLES
8586
--------------------------------------------------------
8587
 
5924 dpurdie 8588
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."USER_ROLES" FOR "ACCESS_MANAGER"."USER_ROLES";
4534 dpurdie 8589
--------------------------------------------------------
8590
--  DDL for Synonymn VTREES
8591
--------------------------------------------------------
8592
 
5924 dpurdie 8593
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."VTREES" FOR "RELEASE_MANAGER"."VTREES";
4534 dpurdie 8594
--------------------------------------------------------
8595
--  DDL for Synonymn VTREES_WORLD
8596
--------------------------------------------------------
8597
 
5924 dpurdie 8598
  CREATE OR REPLACE SYNONYM "DEPLOYMENT_MANAGER"."VTREES_WORLD" FOR "RELEASE_MANAGER"."VTREES_WORLD";