Subversion Repositories DevTools

Rev

Rev 4556 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4556 Rev 5356
Line 1... Line 1...
1
<%@LANGUAGE="VBSCRIPT"%>
1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
2
<%
3
'=====================================================
3
'=====================================================
4
'|                                                   |
4
'|                                                   |
5
'|				         DIFF					     |
5
'|				         DIFF					     |
6
'|                                                   |
6
'|                                                   |
7
'=====================================================
7
'=====================================================
8
%>
8
%>
9
<%
9
<%
10
Option explicit
10
Option explicit
11
' Good idea to set when using redirect
11
' Good idea to set when using redirect
12
Response.Expires = 0	' always load the page, dont store
12
Response.Expires = 0	' always load the page, dont store
13
%>
13
%>
14
 
14
 
15
<%
15
<%
16
'To enable the script timeout to 5 mins
16
'To enable the script timeout to 5 mins
17
Server.ScriptTimeout=600
17
Server.ScriptTimeout=600
18
%>
18
%>
19
<!--#include file="common/config.asp"-->
19
<!--#include file="common/config.asp"-->
20
<!--#include file="common/globals.asp"-->
20
<!--#include file="common/globals.asp"-->
21
<!--#include file="common/formating.asp"-->
21
<!--#include file="common/formating.asp"-->
22
<!--#include file="common/common_subs.asp"-->
22
<!--#include file="common/common_subs.asp"-->
23
<!--#include file="common/common_dbedit.asp"-->
23
<!--#include file="common/common_dbedit.asp"-->
24
<!--#include file="common/_form_window_common.asp"-->
24
<!--#include file="common/_form_window_common.asp"-->
25
<!--#include file="common/_rtree_common.asp"-->
25
<!--#include file="common/_rtree_common.asp"-->
26
<%
26
<%
27
' Set rfile parameter. This is a return page after Login
27
' Set rfile parameter. This is a return page after Login
28
'Call objPMod.StoreParameter ( "rfile", "rtree.asp" )
28
'Call objPMod.StoreParameter ( "rfile", "rtree.asp" )
29
'objPMod.PersistInQryString("proj_id")
29
'objPMod.PersistInQryString("proj_id")
30
'------------ ACCESS CONTROL ------------------
30
'------------ ACCESS CONTROL ------------------
31
%>
31
%>
32
 
32
 
33
<!--#include file="_access_control_general.asp"-->
33
<!--#include file="_access_control_general.asp"-->
34
<%
34
<%
35
'------------ Variable Definition -------------
35
'------------ Variable Definition -------------
36
Dim rsQry
36
Dim rsQry
37
Dim objRelCollectorA
37
Dim objRelCollectorA
38
Dim objRelCollectorB
38
Dim objRelCollectorB
39
Dim parRtagA
39
Dim parRtagA
40
Dim parRtagB
40
Dim parRtagB
41
Dim parSBOMA
41
Dim parSBOMA
42
Dim parSBOMB
42
Dim parSBOMB
43
Dim dDiffFilter
43
Dim dDiffFilter
44
Dim colorA, colorB, ChangeTypeIcon
44
Dim colorA, colorB, ChangeTypeIcon
45
Dim btnMerge, btnRemove
45
Dim btnMerge, btnRemove
46
Dim rowId
46
Dim rowId
47
Dim pkgA, pkgB, pkgname, delimiter, rsQryA, rsQryB, rsQryCommentsA, rsQryCommentsB, sqlstrA, counterA, sqlstrB, sqlstrC, counterB
47
Dim pkgA, pkgB, pkgname, delimiter, rsQryA, rsQryB, rsQryCommentsA, rsQryCommentsB, sqlstrA, counterA, sqlstrB, sqlstrC, counterB
48
Dim SSsql, retVal, rsCQ, DEVIiss, TDSEiss, VT5DMiss, VTSUPiss		
48
Dim SSsql, retVal, rsCQ, DEVIiss, TDSEiss, VT5DMiss, VTSUPiss		
49
Dim a, b, c, d, pkgversion, errormsg, source_change
49
Dim a, b, c, d, pkgversion, errormsg, source_change
50
Dim VersionList
50
Dim VersionList
51
 
51
 
52
 
52
 
53
'------------ Constants Declaration -----------
53
'------------ Constants Declaration -----------
54
Const LIMG_UPDATED = "<img src='images/i_updated.gif' width='11' height='11' border='0' hspace='5' align='absmiddle' title='Updated'>"
54
Const LIMG_UPDATED = "<img src='images/i_updated.gif' width='11' height='11' border='0' hspace='5' align='absmiddle' title='Updated'>"
55
Const LIMG_ADDED = "<img src='images/i_added.gif' width='11' height='11' border='0' hspace='5' align='absmiddle' title='Added'>"
55
Const LIMG_ADDED = "<img src='images/i_added.gif' width='11' height='11' border='0' hspace='5' align='absmiddle' title='Added'>"
56
Const LIMG_REMOVED = "<img src='images/i_removed.gif' width='11' height='11' border='0' hspace='5' align='absmiddle' title='Removed'>"
56
Const LIMG_REMOVED = "<img src='images/i_removed.gif' width='11' height='11' border='0' hspace='5' align='absmiddle' title='Removed'>"
57
Const LIMG_FILTER_ON = "<img src='images/i_data_table.gif' border='0' align='absmiddle' hspace='0' title='Filter in use.'>"
57
Const LIMG_FILTER_ON = "<img src='images/i_data_table.gif' border='0' align='absmiddle' hspace='0' title='Filter in use.'>"
58
Const LIMG_FILTER_OFF = "<img src='images/i_data_table_off.gif' border='0' align='absmiddle' hspace='0' title='Filter not in use.'>"
58
Const LIMG_FILTER_OFF = "<img src='images/i_data_table_off.gif' border='0' align='absmiddle' hspace='0' title='Filter not in use.'>"
59
Const LIMG_DROP_DOWN_ARROW = "<img src='images/i_drop_down_arrow.gif' width='5' height='15' hspace='1' border='0' align='absmiddle'>"
59
Const LIMG_DROP_DOWN_ARROW = "<img src='images/i_drop_down_arrow.gif' width='5' height='15' hspace='1' border='0' align='absmiddle'>"
60
Const LCOLOR_NOT_CHANGED = "#F5F5F5"
60
Const LCOLOR_NOT_CHANGED = "#F5F5F5"
61
Const LCOLOR_CHANGED = "#d2f7c9"
61
Const LCOLOR_CHANGED = "#d2f7c9"
62
Const LCOLOR_BLANK = "#FFFFFF"
62
Const LCOLOR_BLANK = "#FFFFFF"
63
Const LIMG_MERGE = "<img src='images/bt_move_all_right.gif' title='Click to merge.' border='0'>"
63
Const LIMG_MERGE = "<img src='images/bt_move_all_right.gif' title='Click to merge.' border='0'>"
64
Const LIMG_MERGE_WARN = "<img src='images/bt_move_warn_right.gif' title='Right hand side version is newer.' border='0'>"
64
Const LIMG_MERGE_WARN = "<img src='images/bt_move_warn_right.gif' title='Right hand side version is newer.' border='0'>"
65
Const LIMG_REMOVE = "<img src='images/bt_remove.gif' title='Remove this version from release.' border='0'>"
65
Const LIMG_REMOVE = "<img src='images/bt_remove.gif' title='Remove this version from release.' border='0'>"
66
Const LIMG_UNDO = "<img src='images/bt_undo.gif' title='Undo merge/remove.' border='0'>"
66
Const LIMG_UNDO = "<img src='images/bt_undo.gif' title='Undo merge/remove.' border='0'>"
67
'------------ Variable Init -------------------
67
'------------ Variable Init -------------------
68
parRtagA = Request("rtagA")
68
parRtagA = Request("rtagA")
69
parRtagB = Request("rtagB")
69
parRtagB = Request("rtagB")
70
parSBOMA = Request("sbomA")
70
parSBOMA = Request("sbomA")
71
parSBOMB = Request("sbomB")
71
parSBOMB = Request("sbomB")
72
Set objRelCollectorA = CreateObject("Scripting.Dictionary")
72
Set objRelCollectorA = CreateObject("Scripting.Dictionary")
73
Set objRelCollectorB = CreateObject("Scripting.Dictionary")
73
Set objRelCollectorB = CreateObject("Scripting.Dictionary")
74
Set dDiffFilter = CreateObject("Scripting.Dictionary")
74
Set dDiffFilter = CreateObject("Scripting.Dictionary")
75
 
75
 
76
'----------------------------------------------
76
'----------------------------------------------
77
%>
77
%>
78
<%
78
<%
79
'--------------------------------------------------------------------------------------------------------------------------
79
'--------------------------------------------------------------------------------------------------------------------------
80
Sub GetDiffFilterValues ( outDepFilter )
80
Sub GetDiffFilterValues ( outDepFilter )
81
	Dim FilterVal, aFilterValues
81
	Dim FilterVal, aFilterValues
82
	
82
	
83
	If Request.Cookies(enum_RELMGR_COOKIE_DOMAIN)(COOKIE_HIDE_DIFF_FILTER) <> "" Then	
83
	If Request.Cookies(enum_RELMGR_COOKIE_DOMAIN)(COOKIE_HIDE_DIFF_FILTER) <> "" Then	
84
		aFilterValues = Split( Replace( Request.Cookies(enum_RELMGR_COOKIE_DOMAIN)(COOKIE_HIDE_DIFF_FILTER), " ", ""), ",") 
84
		aFilterValues = Split( Replace( Request.Cookies(enum_RELMGR_COOKIE_DOMAIN)(COOKIE_HIDE_DIFF_FILTER), " ", ""), ",") 
85
		
85
		
86
		For Each FilterVal In aFilterValues
86
		For Each FilterVal In aFilterValues
87
			outDepFilter.Item (CStr( FilterVal )) = ""
87
			outDepFilter.Item (CStr( FilterVal )) = ""
88
		Next
88
		Next
89
 
89
 
90
	End If
90
	End If
91
	
91
	
92
End Sub
92
End Sub
93
'--------------------------------------------------------------------------------------------------------------------------
93
'--------------------------------------------------------------------------------------------------------------------------
94
Sub GetFixedIssues(pv_id)
94
Sub GetFixedIssues(pv_id)
95
	Set sqlstrC = OraDatabase.DbCreateDynaset("SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE pv_id="& pv_id &"  AND iss_db="& CInt(enumCLEARQUEST_VTSUP_ID) &" AND iss_state = "& enumISSUES_STATE_FIXED, cint(0))						 
95
	Set sqlstrC = OraDatabase.DbCreateDynaset("SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE pv_id="& pv_id &"  AND iss_db="& CInt(enumCLEARQUEST_VTSUP_ID) &" AND iss_state = "& enumISSUES_STATE_FIXED, cint(0))						 
96
		
96
		
97
	If sqlstrC.RecordCount <> 0 Then
97
	If sqlstrC.RecordCount <> 0 Then
98
		
98
		
99
		While ((NOT sqlstrC.BOF) AND (NOT sqlstrC.EOF))
99
		While ((NOT sqlstrC.BOF) AND (NOT sqlstrC.EOF))
100
			DEVIiss = "-1"
100
			DEVIiss = "-1"
101
			TDSEiss = "-1"
101
			TDSEiss = "-1"
102
			VT5DMiss = "-1"
102
			VT5DMiss = "-1"
103
			VTSUPiss = "-1"
103
			VTSUPiss = "-1"
104
				
104
				
105
			If CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_DEVI_ID) Then
105
			If CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_DEVI_ID) Then
106
				DEVIiss = DEVIiss &","& sqlstrC("iss_id")
106
				DEVIiss = DEVIiss &","& sqlstrC("iss_id")
107
			ElseIf CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_TDSE_ID) Then
107
			ElseIf CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_TDSE_ID) Then
108
				TDSEiss = TDSEiss &","& sqlstrC("iss_id")
108
				TDSEiss = TDSEiss &","& sqlstrC("iss_id")
109
			ElseIf CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_VT5DM_ID) Then
109
			ElseIf CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_VT5DM_ID) Then
110
				VT5DMiss = VT5DMiss &","& sqlstrC("iss_id")		
110
				VT5DMiss = VT5DMiss &","& sqlstrC("iss_id")		
111
			ElseIf CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_VTSUP_ID) Then
111
			ElseIf CInt(sqlstrC("iss_db")) = CInt(enumCLEARQUEST_VTSUP_ID) Then
112
				VTSUPiss = VTSUPiss &","& sqlstrC("iss_id")												
112
				VTSUPiss = VTSUPiss &","& sqlstrC("iss_id")												
113
			End If
113
			End If
114
			
114
			
115
			SSsql = ReadFile( QUERIES_PATH & "\cq_issues.sql" )
115
			SSsql = ReadFile( QUERIES_PATH & "\cq_issues.sql" )
116
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_DEVI_ID*/", enumCLEARQUEST_DEVI_ID)
116
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_DEVI_ID*/", enumCLEARQUEST_DEVI_ID)
117
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_TDSE_ID*/", enumCLEARQUEST_TDSE_ID)
117
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_TDSE_ID*/", enumCLEARQUEST_TDSE_ID)
118
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_VT5DM_ID*/", enumCLEARQUEST_VT5DM_ID)
118
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_VT5DM_ID*/", enumCLEARQUEST_VT5DM_ID)
119
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_VTSUP_ID*/", enumCLEARQUEST_VTSUP_ID)					
119
			SSsql = Replace( SSsql, "/*enumCLEARQUEST_VTSUP_ID*/", enumCLEARQUEST_VTSUP_ID)					
120
			SSsql = Replace( SSsql, "/*DEVIiss*/", DEVIiss)
120
			SSsql = Replace( SSsql, "/*DEVIiss*/", DEVIiss)
121
			SSsql = Replace( SSsql, "/*TDSEiss*/", TDSEiss)
121
			SSsql = Replace( SSsql, "/*TDSEiss*/", TDSEiss)
122
			SSsql = Replace( SSsql, "/*VT5DMiss*/", VT5DMiss)	
122
			SSsql = Replace( SSsql, "/*VT5DMiss*/", VT5DMiss)	
123
			SSsql = Replace( SSsql, "/*VTSUPiss*/", VTSUPiss)
123
			SSsql = Replace( SSsql, "/*VTSUPiss*/", VTSUPiss)
124
 
124
 
125
			retVal = Get_CQ_Issues ( SSsql, rsCQ )			
125
			retVal = Get_CQ_Issues ( SSsql, rsCQ )			
126
			
126
			
127
			sqlstrC.MoveNext
127
			sqlstrC.MoveNext
128
 
128
 
129
		Wend
129
		Wend
130
 
130
 
131
 
131
 
132
	End If
132
	End If
133
	
133
	
134
	sqlstrC.Close()
134
	sqlstrC.Close()
135
	Set sqlstrC = Nothing
135
	Set sqlstrC = Nothing
136
			
136
			
137
 
137
 
138
End Sub
138
End Sub
139
'--------------------------------------------------------------------------------------------------------------------------
139
'--------------------------------------------------------------------------------------------------------------------------
140
Function LastPvId(pvId)
140
Function LastPvId(pvId)
141
	Dim qryA
141
	Dim qryA
142
	Set qryA = OraDatabase.DbCreateDynaset("SELECT LAST_PV_ID FROM PACKAGE_VERSIONS WHERE PV_ID="&pvId , cint(0))
142
	Set qryA = OraDatabase.DbCreateDynaset("SELECT LAST_PV_ID FROM PACKAGE_VERSIONS WHERE PV_ID="&pvId , cint(0))
143
	
143
	
144
	LastPvId = pvId
144
	LastPvId = pvId
145
	
145
	
146
	If pvId <> qryA("last_pv_id") Then	
146
	If pvId <> qryA("last_pv_id") Then	
147
		LastPvId = qryA("last_pv_id")
147
		LastPvId = qryA("last_pv_id")
148
	Else 
148
	Else 
149
		errormsg = true
149
		errormsg = true
150
	End If
150
	End If
151
	
151
	
152
	qryA.Close()
152
	qryA.Close()
153
	Set qryA = Nothing
153
	Set qryA = Nothing
154
 
154
 
155
End Function
155
End Function
156
'--------------------------------------------------------------------------------------------------------------------------
156
'--------------------------------------------------------------------------------------------------------------------------
157
Sub PreviousVersions(a, b, versionA, versionB)
157
Sub PreviousVersions(a, b, versionA, versionB)
158
	
158
	
159
	If CLng(a) < CLng(b) Then
159
	If CLng(a) < CLng(b) Then
160
		While CLng(a) < CLng(b)
160
		While CLng(a) < CLng(b)
161
			b = LastPvId(b)
161
			b = LastPvId(b)
162
			If CLng(a) < CLng(b) Then
162
			If CLng(a) < CLng(b) Then
163
				VersionList = VersionList + ","& b &""
163
				VersionList = VersionList + ","& b &""
164
				Call Comments(b)
164
				Call Comments(b)
165
				Call GetFixedIssues(b)
165
				Call GetFixedIssues(b)
166
			End If
166
			End If
167
		Wend
167
		Wend
168
	End If	
168
	End If	
169
 
169
 
170
	If CLng(b) < CLng(a) Then
170
	If CLng(b) < CLng(a) Then
171
		While CLng(b) < CLng(a)
171
		While CLng(b) < CLng(a)
172
			a = LastPvId(a)
172
			a = LastPvId(a)
173
			If CLng(b) < CLng(a) Then
173
			If CLng(b) < CLng(a) Then
174
				VersionList = VersionList + ","& a &""
174
				VersionList = VersionList + ","& a &""
175
				Call Comments(a)
175
				Call Comments(a)
176
				Call GetFixedIssues(a)
176
				Call GetFixedIssues(a)
177
			End If
177
			End If
178
		Wend	
178
		Wend	
179
	End If
179
	End If
180
		 
180
		 
181
 
181
 
182
End Sub
182
End Sub
183
'--------------------------------------------------------------------------------------------------------------------------
183
'--------------------------------------------------------------------------------------------------------------------------
184
Sub pkg_Version(pv)
184
Sub pkg_Version(pv)
185
	Dim qry	
185
	Dim qry	
186
	Set qry = OraDatabase.DbCreateDynaset("SELECT PKG_VERSION FROM PACKAGE_VERSIONS WHERE PV_ID="&pv , cint(0))	
186
	Set qry = OraDatabase.DbCreateDynaset("SELECT PKG_VERSION FROM PACKAGE_VERSIONS WHERE PV_ID="&pv , cint(0))	
187
	pkgversion = qry("pkg_version")
187
	pkgversion = qry("pkg_version")
188
	qry.Close()
188
	qry.Close()
189
	Set qry = Nothing
189
	Set qry = Nothing
190
End Sub
190
End Sub
191
'--------------------------------------------------------------------------------------------------------------------------
191
'--------------------------------------------------------------------------------------------------------------------------
192
Function GetIsDiffFilterInUseIcon()
192
Function GetIsDiffFilterInUseIcon()
193
	GetIsDiffFilterInUseIcon = LIMG_FILTER_OFF & LIMG_DROP_DOWN_ARROW
193
	GetIsDiffFilterInUseIcon = LIMG_FILTER_OFF & LIMG_DROP_DOWN_ARROW
194
	
194
	
195
	If dDiffFilter.Count > 0 Then
195
	If dDiffFilter.Count > 0 Then
196
		GetIsDiffFilterInUseIcon = LIMG_FILTER_ON & LIMG_DROP_DOWN_ARROW
196
		GetIsDiffFilterInUseIcon = LIMG_FILTER_ON & LIMG_DROP_DOWN_ARROW
197
	End If
197
	End If
198
	
198
	
199
End Function
199
End Function
200
'--------------------------------------------------------------------------------------------------------------------------
200
'--------------------------------------------------------------------------------------------------------------------------
201
Function GetIsDiffFilterChecked( nFilterId )
201
Function GetIsDiffFilterChecked( nFilterId )
202
	
202
	
203
	If dDiffFilter.Exists ( CStr(nFilterId)  ) Then
203
	If dDiffFilter.Exists ( CStr(nFilterId)  ) Then
204
		GetIsDiffFilterChecked = "checked"
204
		GetIsDiffFilterChecked = "checked"
205
	End If
205
	End If
206
	
206
	
207
End Function
207
End Function
208
'---------------------------------------------------------------------------------------------------------------------------
208
'---------------------------------------------------------------------------------------------------------------------------
209
Function  Get_CQ_Issues ( SSsql, OOrsCQ )
209
Function  Get_CQ_Issues ( SSsql, OOrsCQ )
210
 
210
 
211
	On Error Resume Next
211
	On Error Resume Next
212
    Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
212
    Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
213
	Get_CQ_Issues = Err.Number
213
	Get_CQ_Issues = Err.Number
214
	
214
	
215
End Function
215
End Function
216
'--------------------------------------------------------------------------------------------------------------------------
216
'--------------------------------------------------------------------------------------------------------------------------
217
Public Function TextToHTML ( sString )
217
Public Function TextToHTML ( sString )
218
	Dim mString
218
	Dim mString
219
		
219
		
220
	If (sString = "") OR IsNull(sString) Then Exit Function
220
	If (sString = "") OR IsNull(sString) Then Exit Function
221
	
221
	
222
	mString = Server.HTMLEncode( sString )
222
	mString = Server.HTMLEncode( sString )
223
	mString = Replace(mString, VBNewLine, "<br>")
223
	mString = Replace(mString, VBNewLine, "<br>")
224
		
224
		
225
	TextToHTML = mString
225
	TextToHTML = mString
226
End Function
226
End Function
227
'--------------------------------------------------------------------------------------------------------------------------
227
'--------------------------------------------------------------------------------------------------------------------------
228
Sub GetFormDetails ( nSourceSBOM, ByRef outobjDetails )
228
Sub GetFormDetails ( nSourceSBOM, ByRef outobjDetails )
229
	Dim rsQry, query
229
	Dim rsQry, query
230
	
230
	
231
	' Exit if nSourceRtagId is empty
231
	' Exit if nSourceRtagId is empty
232
	If nSourceSBOM = "" Then Exit Sub 
232
	If nSourceSBOM = "" Then Exit Sub 
233
 
233
 
234
	OraDatabase.Parameters.Add "SBOM", 	nSourceSBOM,		ORAPARM_INPUT, ORATYPE_NUMBER 
234
	OraDatabase.Parameters.Add "SBOM", 	nSourceSBOM,		ORAPARM_INPUT, ORATYPE_NUMBER 
235
	
235
	
236
	query = _
236
	query = _
237
	" SELECT pr.PROJ_NAME ||' &gt; '|| br.BRANCH_NAME ||' &gt; '|| b.BOM_VERSION ||'.'||b.BOM_LIFECYCLE  AS LOCATION, "&_
237
	" SELECT pr.PROJ_NAME ||' &gt; '|| br.BRANCH_NAME ||' &gt; '|| b.BOM_VERSION ||'.'||b.BOM_LIFECYCLE  AS LOCATION, "&_
238
	"        pr.PROJ_ID, b.BOM_ID, br.BRANCH_ID, b.IS_READONLY"&_
238
	"        pr.PROJ_ID, b.BOM_ID, br.BRANCH_ID, b.IS_READONLY"&_
239
	"  FROM BRANCHES br,"&_
239
	"  FROM BRANCHES br,"&_
240
	"  		BOMS b,"&_	
240
	"  		BOMS b,"&_	
241
	"  	    DM_PROJECTS pr"&_
241
	"  	    DM_PROJECTS pr"&_
242
	" WHERE br.PROJ_ID = pr.PROJ_ID"&_
242
	" WHERE br.PROJ_ID = pr.PROJ_ID"&_
243
	" 	AND b.BRANCH_ID = br.BRANCH_ID"&_	
243
	" 	AND b.BRANCH_ID = br.BRANCH_ID"&_	
244
	"   AND b.BOM_ID = :SBOM"
244
	"   AND b.BOM_ID = :SBOM"
245
	
245
	
246
	Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
246
	Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
247
	
247
	
248
	OraDatabase.Parameters.Remove "SBOM"
248
	OraDatabase.Parameters.Remove "SBOM"
249
	
249
	
250
	If rsQry.RecordCount > 0 Then
250
	If rsQry.RecordCount > 0 Then
251
		outobjDetails.Item ("location") = rsQry("location")
251
		outobjDetails.Item ("location") = rsQry("location")
252
		outobjDetails.Item ("official") = rsQry("IS_READONLY")
252
		outobjDetails.Item ("official") = rsQry("IS_READONLY")
253
		outobjDetails.Item ("proj_id") = rsQry("proj_id")
253
		outobjDetails.Item ("proj_id") = rsQry("proj_id")
254
		outobjDetails.Item ("branch_id") = rsQry("branch_id")
254
		outobjDetails.Item ("branch_id") = rsQry("branch_id")
255
		outobjDetails.Item ("bom_id") = rsQry("bom_id")		
255
		outobjDetails.Item ("bom_id") = rsQry("bom_id")		
256
	Else
256
	Else
257
		Err.Raise 8, "Sub GetFormDetails in "& SCRIPT_NAME, "Empty record set returned. nSourceSBOM="& nSourceSBOM
257
		Err.Raise 8, "Sub GetFormDetails in "& SCRIPT_NAME, "Empty record set returned. nSourceSBOM="& nSourceSBOM
258
	End If
258
	End If
259
	
259
	
260
	If outobjDetails.Item ("location") = "" Then
260
	If outobjDetails.Item ("location") = "" Then
261
		outobjDetails.Item ("location") = "N"
261
		outobjDetails.Item ("location") = "N"
262
	End If
262
	End If
263
	
263
	
264
	rsQry.Close
264
	rsQry.Close
265
	Set rsQry = Nothing
265
	Set rsQry = Nothing
266
	
266
	
267
End Sub
267
End Sub
268
'--------------------------------------------------------------------------------------------------------------------------
268
'--------------------------------------------------------------------------------------------------------------------------
269
Sub GetDiffStateIcon( nDiffState, outIcon )
269
Sub GetDiffStateIcon( nDiffState, outIcon )
270
 
270
 
271
	Select Case nDiffState
271
	Select Case nDiffState
272
		Case "U"
272
		Case "U"
273
			outIcon  = LIMG_UPDATED		
273
			outIcon  = LIMG_UPDATED		
274
		Case "UW"
274
		Case "UW"
275
			outIcon  = LIMG_UPDATED			
275
			outIcon  = LIMG_UPDATED			
276
		Case "A"
276
		Case "A"
277
			outIcon = LIMG_ADDED			
277
			outIcon = LIMG_ADDED			
278
		Case "R"
278
		Case "R"
279
			outIcon = LIMG_REMOVED			
279
			outIcon = LIMG_REMOVED			
280
		Case Else
280
		Case Else
281
			outIcon = ""			
281
			outIcon = ""			
282
	End Select
282
	End Select
283
	
283
	
284
End Sub
284
End Sub
285
'--------------------------------------------------------------------------------------------------------------------------
285
'--------------------------------------------------------------------------------------------------------------------------
286
%>
286
%>
287
<%
287
<%
288
'------------ RUN BEFORE PAGE RENDER ----------
288
'------------ RUN BEFORE PAGE RENDER ----------
289
If Request("btn") = "Exit" Then
289
If Request("btn") = "Exit" Then
290
	Call OpenInWindow ( "reports.asp" )
290
	Call OpenInWindow ( "reports.asp" )
291
End If
291
End If
292
 
292
 
293
' Get release details
293
' Get release details
294
Call GetFormDetails ( parSBOMA, objRelCollectorA )
294
Call GetFormDetails ( parSBOMA, objRelCollectorA )
295
Call GetFormDetails ( parSBOMB, objRelCollectorB )
295
Call GetFormDetails ( parSBOMB, objRelCollectorB )
296
 
296
 
297
If Request("btn") = "Swap Compare" Then
297
If Request("btn") = "Swap Compare" Then
298
	Call OpenInWindow ( SCRIPT_NAME &"?sbomA="& parSBOMB &"&sbomB="& parSBOMA )
298
	Call OpenInWindow ( SCRIPT_NAME &"?sbomA="& parSBOMB &"&sbomB="& parSBOMA )
299
End If
299
End If
300
 
300
 
301
If Request("btn") = "Hide" Then
301
If Request("btn") = "Hide" Then
302
	' Store filter in cookie
302
	' Store filter in cookie
303
	Response.Cookies(enum_RELMGR_COOKIE_DOMAIN)(COOKIE_HIDE_DIFF_FILTER) = Request("difilter")
303
	Response.Cookies(enum_RELMGR_COOKIE_DOMAIN)(COOKIE_HIDE_DIFF_FILTER) = Request("difilter")
304
End If
304
End If
305
 
305
 
306
 
306
 
307
Call GetDiffFilterValues ( dDiffFilter )
307
Call GetDiffFilterValues ( dDiffFilter )
308
'----------------------------------------------
308
'----------------------------------------------
309
%>
309
%>
310
<html>
310
<html>
311
<head>
311
<head>
312
<title>Production Manager SBOM Differences</title>
312
<title>Production Manager SBOM Differences</title>
313
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
313
<link rel="shortcut icon" href="<%=FavIcon%>"/>
314
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
314
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
315
<link rel="stylesheet" href="scripts/deployment_manager.css" type="text/css">
315
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
316
<link rel="stylesheet" href="images/release_manager_style.css" type="text/css">
316
<link rel="stylesheet" href="scripts/deployment_manager.css" type="text/css">
317
<link rel="stylesheet" href="images/navigation.css" type="text/css">
317
<link rel="stylesheet" href="images/release_manager_style.css" type="text/css">
318
<script language="JavaScript" src="images/common.js"></script>
318
<link rel="stylesheet" href="images/navigation.css" type="text/css">
319
<script language="JavaScript" src="scripts/remote_scripting.js"></script>
319
<script language="JavaScript" src="images/common.js"></script>
320
<script language="JavaScript" type="text/javascript">
320
<script language="JavaScript" src="scripts/remote_scripting.js"></script>
321
<!--
321
<script language="JavaScript" type="text/javascript">
322
 
322
<!--
323
function RequestReleaseCombo( paramString, rowId ){
323
 
324
	var requestURL = 'RequestReleaseCombo.asp';
324
function RequestReleaseCombo( paramString, rowId ){
325
 
325
	var requestURL = 'RequestReleaseCombo.asp';
326
	// Set ajax divname
326
 
327
	ajaxdivname = rowId;
327
	// Set ajax divname
328
	
328
	ajaxdivname = rowId;
329
	//Append the name to search for to the requestURL
329
	
330
	var url = requestURL + paramString;
330
	//Append the name to search for to the requestURL
331
	
331
	var url = requestURL + paramString;
332
	//Progress
332
	
333
	//alert(MM_findObj( rowId ));
333
	//Progress
334
	
334
	//alert(MM_findObj( rowId ));
335
	//MM_findObj( rowId ).options[0] = new Option('Loading...','');
335
	
336
	//MM_findObj( rowId ).selectedIndex = 0;
336
	//MM_findObj( rowId ).options[0] = new Option('Loading...','');
337
	rowId.options[0] = new Option('Loading...','');
337
	//MM_findObj( rowId ).selectedIndex = 0;
338
	rowId.selectedIndex = 0;
338
	rowId.options[0] = new Option('Loading...','');
339
	
339
	rowId.selectedIndex = 0;
340
	
340
	
341
	//Create the xmlHttp object to use in the request
341
	
342
	//stateChangeHandler will fire when the state has changed, i.e. data is received back
342
	//Create the xmlHttp object to use in the request
343
	// This is non-blocking (asynchronous)
343
	//stateChangeHandler will fire when the state has changed, i.e. data is received back
344
	xmlHttp = GetXmlHttpObject(stateComboChangeHandler);
344
	// This is non-blocking (asynchronous)
345
	
345
	xmlHttp = GetXmlHttpObject(stateComboChangeHandler);
346
	//Send the xmlHttp get to the specified url
346
	
347
	xmlHttp_Get(xmlHttp, url);
347
	//Send the xmlHttp get to the specified url
348
	
348
	xmlHttp_Get(xmlHttp, url);
349
	
349
	
350
}
350
	
351
 
351
}
352
function RequestSBOMCombo( paramString, rowId ){
352
 
353
	var requestURL = 'RequestSBOMCombo.asp';
353
function RequestSBOMCombo( paramString, rowId ){
354
 
354
	var requestURL = 'RequestSBOMCombo.asp';
355
	// Set ajax divname
355
 
356
	ajaxdivname = rowId;
356
	// Set ajax divname
357
	
357
	ajaxdivname = rowId;
358
	//Append the name to search for to the requestURL
358
	
359
	var url = requestURL + paramString;
359
	//Append the name to search for to the requestURL
360
	
360
	var url = requestURL + paramString;
361
	//Progress
361
	
362
	//alert(MM_findObj( rowId ));
362
	//Progress
363
	
363
	//alert(MM_findObj( rowId ));
364
	//MM_findObj( rowId ).options[0] = new Option('Loading...','');
364
	
365
	//MM_findObj( rowId ).selectedIndex = 0;
365
	//MM_findObj( rowId ).options[0] = new Option('Loading...','');
366
	rowId.options[0] = new Option('Loading...','');
366
	//MM_findObj( rowId ).selectedIndex = 0;
367
	rowId.selectedIndex = 0;
367
	rowId.options[0] = new Option('Loading...','');
368
	
368
	rowId.selectedIndex = 0;
369
	
369
	
370
	//Create the xmlHttp object to use in the request
370
	
371
	//stateChangeHandler will fire when the state has changed, i.e. data is received back
371
	//Create the xmlHttp object to use in the request
372
	// This is non-blocking (asynchronous)
372
	//stateChangeHandler will fire when the state has changed, i.e. data is received back
373
	xmlHttp = GetXmlHttpObject(stateComboChangeHandler);
373
	// This is non-blocking (asynchronous)
374
	
374
	xmlHttp = GetXmlHttpObject(stateComboChangeHandler);
375
	//Send the xmlHttp get to the specified url
375
	
376
	xmlHttp_Get(xmlHttp, url);
376
	//Send the xmlHttp get to the specified url
377
	
377
	xmlHttp_Get(xmlHttp, url);
378
	
378
	
379
}
379
	
380
 
380
}
381
function UndoPackage ( rowId )
381
 
382
{
382
function UndoPackage ( rowId )
383
 
383
{
384
	// Set merge/remove hidden field with new value
384
 
385
	MM_findObj( 'ADDPKG_' + rowId ).value = '';
385
	// Set merge/remove hidden field with new value
386
	MM_findObj( 'REMOVEPKG_' + rowId ).value = '';
386
	MM_findObj( 'ADDPKG_' + rowId ).value = '';
387
	
387
	MM_findObj( 'REMOVEPKG_' + rowId ).value = '';
388
	var divA = MM_findObj( 'PVA' + rowId );
388
	
389
	var divB = MM_findObj( 'PVB' + rowId );
389
	var divA = MM_findObj( 'PVA' + rowId );
390
	
390
	var divB = MM_findObj( 'PVB' + rowId );
391
	// Set text equal
391
	
392
	divB.innerHTML = MM_findObj( 'UNDOPKG_' + rowId ).value;
392
	// Set text equal
393
	divB.style.textDecoration = 'none';
393
	divB.innerHTML = MM_findObj( 'UNDOPKG_' + rowId ).value;
394
	
394
	divB.style.textDecoration = 'none';
395
	
395
	
396
	// Set highlight to blank
396
	
397
	divA.style.backgroundColor = MM_findObj( 'UNDOCOLORA_' + rowId ).value;
397
	// Set highlight to blank
398
	divB.style.backgroundColor = MM_findObj( 'UNDOCOLORB_' + rowId ).value;
398
	divA.style.backgroundColor = MM_findObj( 'UNDOCOLORA_' + rowId ).value;
399
	
399
	divB.style.backgroundColor = MM_findObj( 'UNDOCOLORB_' + rowId ).value;
400
	
400
	
401
    // Set Change state icon to blank
401
	
402
	MM_findObj( 'IMGSTATE' + rowId ).style.display = 'block';
402
    // Set Change state icon to blank
403
	
403
	MM_findObj( 'IMGSTATE' + rowId ).style.display = 'block';
404
	
404
	
405
	// Remove Merge Button
405
	
406
	var cht = MM_findObj( 'CHANGETYPE_' + rowId );
406
	// Remove Merge Button
407
	
407
	var cht = MM_findObj( 'CHANGETYPE_' + rowId );
408
	if (cht.value == "R")
408
	
409
	{
409
	if (cht.value == "R")
410
		MM_findObj( 'IMGMERGE' + rowId ).style.display = 'block';
410
	{
411
	} 
411
		MM_findObj( 'IMGMERGE' + rowId ).style.display = 'block';
412
	else if ( (cht.value == "A") || (cht.value == "") ) 
412
	} 
413
	{
413
	else if ( (cht.value == "A") || (cht.value == "") ) 
414
		MM_findObj( 'IMGREMOVE' + rowId ).style.display = 'block';
414
	{
415
	} 
415
		MM_findObj( 'IMGREMOVE' + rowId ).style.display = 'block';
416
	else 
416
	} 
417
	{
417
	else 
418
		MM_findObj( 'IMGMERGE' + rowId ).style.display = 'block';
418
	{
419
		MM_findObj( 'IMGREMOVE' + rowId ).style.display = 'block';
419
		MM_findObj( 'IMGMERGE' + rowId ).style.display = 'block';
420
	}
420
		MM_findObj( 'IMGREMOVE' + rowId ).style.display = 'block';
421
	
421
	}
422
	// Show undo button
422
	
423
	MM_findObj( 'IMGUNDO' + rowId ).style.display = 'none';
423
	// Show undo button
424
	
424
	MM_findObj( 'IMGUNDO' + rowId ).style.display = 'none';
425
}
425
	
426
 
426
}
427
//-->
427
 
428
</script>
428
//-->
429
 
429
</script>
430
</head>
430
 
431
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0">
431
</head>
432
<form name="FormName" method="post" action="<%=SCRIPT_NAME%>">
432
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0">
433
<!-- HEADER -->
433
<form name="FormName" method="post" action="<%=SCRIPT_NAME%>">
434
<!--#include file="_header.asp"-->
434
<!-- HEADER -->
435
<!-- BODY ---->
435
<!--#include file="_header.asp"-->
436
<table width="100%" border="0" cellspacing="0" cellpadding="0">
436
<!-- BODY ---->
437
  <tr> 
437
<table width="100%" border="0" cellspacing="0" cellpadding="0">
438
    <td width="1%" background="images/bg_lightgreen.gif" valign="top">
438
  <tr> 
439
	
439
    <td width="1%" background="images/bg_lightgreen.gif" valign="top">
440
	
440
	
441
	<!-- SELECT SBOM A ---------------------------------------------->
441
	
442
	
442
	<!-- SELECT SBOM A ---------------------------------------------->
443
	<br>
443
	
444
      <table width="100%"  border="0" cellspacing="10" cellpadding="0">
444
	<br>
445
	    
445
      <table width="100%"  border="0" cellspacing="10" cellpadding="0">
446
		<tr>
446
	    
447
          <td align="left" class="body_col"><img src="images/i_rtag_open_mode.gif" border="0" align="absmiddle" width="15" height="13">&nbsp;Select SBOM A<hr size="1px" color="Olive" noshade></td>
447
		<tr>
448
        </tr>
448
          <td align="left" class="body_col"><img src="images/i_rtag_open_mode.gif" border="0" align="absmiddle" width="15" height="13">&nbsp;Select SBOM A<hr size="1px" color="Olive" noshade></td>
449
<!--         <tr>
449
        </tr>
450
          <td align="left">
450
<!--         <tr>
451
		  <select name="projA" class="form_item" onChange="RequestReleaseCombo( '?proj_id='+ this.value, FormName.rtagA );">
451
          <td align="left">
452
              <option value="">-- Select Project --</option>
452
		  <select name="projA" class="form_item" onChange="RequestReleaseCombo( '?proj_id='+ this.value, FormName.rtagA );">
453
			  <%
453
              <option value="">-- Select Project --</option>
454
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorA.Item("proj_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
454
			  <%
455
			  
455
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorA.Item("proj_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
456
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProjectsCombo.sql"), cint(0))
456
			  
457
			  
457
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProjectsCombo.sql"), cint(0))
458
			  OraDatabase.Parameters.Remove "PROJ_ID"
458
			  
459
			  
459
			  OraDatabase.Parameters.Remove "PROJ_ID"
460
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
460
			  
461
                <option value="<%=rsQry("proj_id")%>" <%=rsQry("selected")%>><%=rsQry("proj_name")%></option>
461
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
462
              <%rsQry.MoveNext
462
                <option value="<%=rsQry("proj_id")%>" <%=rsQry("selected")%>><%=rsQry("proj_name")%></option>
463
			  WEnd
463
              <%rsQry.MoveNext
464
			  
464
			  WEnd
465
			  rsQry.Close
465
			  
466
			  Set rsQry = Nothing
466
			  rsQry.Close
467
			%>
467
			  Set rsQry = Nothing
468
          </select></td>
468
			%>
469
        </tr>
469
          </select></td>
470
        <tr>
470
        </tr>
471
          <td align="left">
471
        <tr>
472
		  
472
          <td align="left">
473
		  <select name="rtagA" id="rtagA" class="form_item" onChange="RequestSBOMCombo( '?branch_id='+ this.value, FormName.sbomA );">
473
		  
474
              <option value="">-- Select SBOM --</option>			  
474
		  <select name="rtagA" id="rtagA" class="form_item" onChange="RequestSBOMCombo( '?branch_id='+ this.value, FormName.sbomA );">
475
			  <%
475
              <option value="">-- Select SBOM --</option>			  
476
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorA.Item("proj_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
476
			  <%
477
			  OraDatabase.Parameters.Add "BRANCH_ID", 	objRelCollectorA.Item("branch_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
477
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorA.Item("proj_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
478
			  
478
			  OraDatabase.Parameters.Add "BRANCH_ID", 	objRelCollectorA.Item("branch_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
479
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ReleasesCombo.sql"), cint(0))
479
			  
480
			  
480
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ReleasesCombo.sql"), cint(0))
481
			  OraDatabase.Parameters.Remove "PROJ_ID"
481
			  
482
			  OraDatabase.Parameters.Remove "BRANCH_ID"
482
			  OraDatabase.Parameters.Remove "PROJ_ID"
483
			  
483
			  OraDatabase.Parameters.Remove "BRANCH_ID"
484
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
484
			  
485
                <option value="<%=rsQry("branch_id")%>" <%=rsQry("selected")%>><%=rsQry("branch_name")%></option>
485
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
486
              <%rsQry.MoveNext
486
                <option value="<%=rsQry("branch_id")%>" <%=rsQry("selected")%>><%=rsQry("branch_name")%></option>
487
			  WEnd
487
              <%rsQry.MoveNext
488
			  
488
			  WEnd
489
			  rsQry.Close
489
			  
490
			  Set rsQry = Nothing
490
			  rsQry.Close
491
			  %>
491
			  Set rsQry = Nothing
492
		  </select></td>
492
			  %>
493
        </tr> -->
493
		  </select></td>
494
        <tr>
494
        </tr> -->
495
          <td align="left">
495
        <tr>
496
		  <select name="sbomA" id="sbomA" class="form_item">
496
          <td align="left">
497
            <%
497
		  <select name="sbomA" id="sbomA" class="form_item">
498
			If objAccessControl.IsActive("Vasttrafik")	Then
498
            <%
499
				nBranchId	=	1142
499
			If objAccessControl.IsActive("Vasttrafik")	Then
500
			Else
500
				nBranchId	=	1142
501
				nBranchId	=	542
501
			Else
502
			End	If			
502
				nBranchId	=	542
503
			
503
			End	If			
504
			
504
			
505
			  OraDatabase.Parameters.Add "BOM_ID", 	objRelCollectorA.Item("bom_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
505
			
506
			  OraDatabase.Parameters.Add "BRANCH_ID", 	nBranchId,	ORAPARM_INPUT, ORATYPE_NUMBER 
506
			  OraDatabase.Parameters.Add "BOM_ID", 	objRelCollectorA.Item("bom_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
507
 
507
			  OraDatabase.Parameters.Add "BRANCH_ID", 	nBranchId,	ORAPARM_INPUT, ORATYPE_NUMBER 
508
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProductionTreeCombo.sql"), cint(0))
508
 
509
			 
509
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProductionTreeCombo.sql"), cint(0))
510
			  OraDatabase.Parameters.Remove "BOM_ID"
510
			 
511
			  OraDatabase.Parameters.Remove "BRANCH_ID"
511
			  OraDatabase.Parameters.Remove "BOM_ID"
512
			  
512
			  OraDatabase.Parameters.Remove "BRANCH_ID"
513
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
513
			  
514
            <option value="<%=rsQry("bom_id")%>" <%=rsQry("selected")%>><%=rsQry("bom_name")%>&gt;<%=rsQry("bom_version")%></option>
514
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
515
            <%rsQry.MoveNext
515
            <option value="<%=rsQry("bom_id")%>" <%=rsQry("selected")%>><%=rsQry("bom_name")%>&gt;<%=rsQry("bom_version")%></option>
516
			  WEnd
516
            <%rsQry.MoveNext
517
			  
517
			  WEnd
518
			  rsQry.Close
518
			  
519
			  Set rsQry = Nothing
519
			  rsQry.Close
520
			  %>
520
			  Set rsQry = Nothing
521
          </select>
521
			  %>
522
		  
522
          </select>
523
		  </td>
523
		  
524
        </tr>
524
		  </td>
525
		<%If (parRtagA <> "") Then%>  
525
        </tr>
526
<!-- 		<tr>
526
		<%If (parRtagA <> "") Then%>  
527
          <td align="left"><a href="Bom_Home.asp?bom_id=<%=parSBOMA%>" class="body_txt_drk">Go To SBOM A &raquo;</a></td>
527
<!-- 		<tr>
528
        </tr> -->
528
          <td align="left"><a href="Bom_Home.asp?bom_id=<%=parSBOMA%>" class="body_txt_drk">Go To SBOM A &raquo;</a></td>
529
		<%End If%>
529
        </tr> -->
530
    </table>
530
		<%End If%>
531
	    
531
    </table>
532
    <!-- SELECT SBOM A END ---------------------------------------------->	</td>
532
	    
533
    <td width="1%" valign="top" background="images/bg_lght_gray.gif">&nbsp;</td>
533
    <!-- SELECT SBOM A END ---------------------------------------------->	</td>
534
    <td rowspan="2" valign="top" width="100%" background="images/bg_lght_gray.gif" align="center"> 
534
    <td width="1%" valign="top" background="images/bg_lght_gray.gif">&nbsp;</td>
535
      <!-- DIFF -------------------------------------------------------->
535
    <td rowspan="2" valign="top" width="100%" background="images/bg_lght_gray.gif" align="center"> 
536
      <br>
536
      <!-- DIFF -------------------------------------------------------->
537
	  
537
      <br>
538
	    
538
	  
539
				  
539
	    
540
				  
540
				  
541
      <table width="100%" border="0" cellspacing="10" cellpadding="0">
541
				  
542
        <tr>
542
      <table width="100%" border="0" cellspacing="10" cellpadding="0">
543
          <td>
543
        <tr>
544
		  
544
          <td>
545
		  
545
		  
546
		  
546
		  
547
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
547
		  
548
			  <tr> 
548
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
549
                <td width="1%"></td>
549
			  <tr> 
550
                <td width="100%" align="left" class="form_ttl">DIFF SBOM</td>
550
                <td width="1%"></td>
551
                <td width="1%"></td>
551
                <td width="100%" align="left" class="form_ttl">DIFF SBOM</td>
552
              </tr>
552
                <td width="1%"></td>
553
              <tr> 
553
              </tr>
554
                <td align="left" valign="top" background="images/lbox_bg_blue.gif"><img src="images/lbox_tl_cnr_b.gif" width="13" height="13"></td>
554
              <tr> 
555
                <td background="images/lbox_bg_blue.gif" align="left" class="wform_ttl">&nbsp; 
555
                <td align="left" valign="top" background="images/lbox_bg_blue.gif"><img src="images/lbox_tl_cnr_b.gif" width="13" height="13"></td>
556
                </td>
556
                <td background="images/lbox_bg_blue.gif" align="left" class="wform_ttl">&nbsp; 
557
                <td align="right" valign="top" background="images/lbox_bg_blue.gif"><img src="images/lbox_tr_cnr_b.gif" width="13" height="13"></td>
557
                </td>
558
              </tr>
558
                <td align="right" valign="top" background="images/lbox_bg_blue.gif"><img src="images/lbox_tr_cnr_b.gif" width="13" height="13"></td>
559
              <tr> 
559
              </tr>
560
                <td width="1%" bgcolor="#FFFFFF"><img src="images/h_trsp_dot.gif" width="10" height="100"></td>
560
              <tr> 
561
                <td bgcolor="#FFFFFF" valign="top" class="form_item">
561
                <td width="1%" bgcolor="#FFFFFF"><img src="images/h_trsp_dot.gif" width="10" height="100"></td>
562
                
562
                <td bgcolor="#FFFFFF" valign="top" class="form_item">
563
				
563
                
564
				  
564
				
565
				<table width="100%"  border="0" cellspacing="0" cellpadding="5">
565
				  
566
                  <tr>
566
				<table width="100%"  border="0" cellspacing="0" cellpadding="5">
567
                    <td width="100%" bgcolor="#DAD7C8">
567
                  <tr>
568
					<input type="submit" name="btn" value="Compare" class="form_btn_comp" style="margin-right:5px;">
568
                    <td width="100%" bgcolor="#DAD7C8">
569
					<input type="submit" name="btn" value="Swap Compare" class="form_btn_comp" style="margin-right:5px;">
569
					<input type="submit" name="btn" value="Compare" class="form_btn_comp" style="margin-right:5px;">
570
					<%If parSBOMA <> parSBOMB AND parSBOMA <> "" AND parSBOMB <> "" Then%>
570
					<input type="submit" name="btn" value="Swap Compare" class="form_btn_comp" style="margin-right:5px;">
571
					<input name="generate_button" id="generate_button" type="button" class="form_btn" value="Generate Report" onclick="window.open('diff_report.asp?sbomA=<%=parSBOMA%>&sbomB=<%=parSBOMB%>');">
571
					<%If parSBOMA <> parSBOMB AND parSBOMA <> "" AND parSBOMB <> "" Then%>
572
					<%End If%>
572
					<input name="generate_button" id="generate_button" type="button" class="form_btn" value="Generate Report" onclick="window.open('diff_report.asp?sbomA=<%=parSBOMA%>&sbomB=<%=parSBOMB%>');">
573
					</td>
573
					<%End If%>
574
					
574
					</td>
575
                    <td width="1" align="right" bgcolor="#DAD7C8" nowrap>
575
					
576
					<table width="100%"  border="0" cellspacing="0" cellpadding="0">
576
                    <td width="1" align="right" bgcolor="#DAD7C8" nowrap>
577
                      <tr>
577
					<table width="100%"  border="0" cellspacing="0" cellpadding="0">
578
 
578
                      <tr>
579
                        <td><input type="submit" name="btn" value="Exit" class="form_btn_comp"></td>
579
 
580
                      </tr>
580
                        <td><input type="submit" name="btn" value="Exit" class="form_btn_comp"></td>
581
                    </table></td>
581
                      </tr>
582
                  </tr>
582
                    </table></td>
583
				  <tr>
583
                  </tr>
584
                    <td>
584
				  <tr>
585
					<%If (parRtagA <> "") AND (parRtagB <> "")Then%> 
585
                    <td>
586
					<!-- DIFF FILTER +++++++++++++++++++++++++++++++++++++++++++ -->   
586
					<%If (parRtagA <> "") AND (parRtagB <> "")Then%> 
587
					<fieldset style="width:150px;">
587
					<!-- DIFF FILTER +++++++++++++++++++++++++++++++++++++++++++ -->   
588
					<legend><a href="javascript:;" class="body_scol" onClick="ToggleDisplay('divDiffFilter');" ><%=GetIsDiffFilterInUseIcon() %>&nbsp;Filter&nbsp;Results...</a></legend>			            	  
588
					<fieldset style="width:150px;">
589
					<div name="divDiffFilter" id="divDiffFilter" class="body_txt" style="display:none;">
589
					<legend><a href="javascript:;" class="body_scol" onClick="ToggleDisplay('divDiffFilter');" ><%=GetIsDiffFilterInUseIcon() %>&nbsp;Filter&nbsp;Results...</a></legend>			            	  
590
					<br>
590
					<div name="divDiffFilter" id="divDiffFilter" class="body_txt" style="display:none;">
591
					<table width="100%"  border="0" cellspacing="1" cellpadding="3">
591
					<br>
592
					    <tr>
592
					<table width="100%"  border="0" cellspacing="1" cellpadding="3">
593
					      <td width="1" background="images/bg_action_norm.gif"><input name="difilter" type="checkbox" value="<%=enumDB_DIFF_UPDATED%>" <%=GetIsDiffFilterChecked(enumDB_DIFF_UPDATED)%>></td>
593
					    <tr>
594
					      <td width="50" nowrap background="images/bg_action_norm.gif" class="form_field"><%=LIMG_UPDATED%>Updated</td>
594
					      <td width="1" background="images/bg_action_norm.gif"><input name="difilter" type="checkbox" value="<%=enumDB_DIFF_UPDATED%>" <%=GetIsDiffFilterChecked(enumDB_DIFF_UPDATED)%>></td>
595
					    </tr>
595
					      <td width="50" nowrap background="images/bg_action_norm.gif" class="form_field"><%=LIMG_UPDATED%>Updated</td>
596
					    <tr>
596
					    </tr>
597
					      <td background="images/bg_action_norm.gif"><input type="checkbox" name="difilter" value="<%=enumDB_DIFF_NEW%>" <%=GetIsDiffFilterChecked(enumDB_DIFF_NEW)%>></td>
597
					    <tr>
598
					      <td nowrap background="images/bg_action_norm.gif" class="form_field"><%=LIMG_ADDED%>Added</td>
598
					      <td background="images/bg_action_norm.gif"><input type="checkbox" name="difilter" value="<%=enumDB_DIFF_NEW%>" <%=GetIsDiffFilterChecked(enumDB_DIFF_NEW)%>></td>
599
					    </tr>
599
					      <td nowrap background="images/bg_action_norm.gif" class="form_field"><%=LIMG_ADDED%>Added</td>
600
					    <tr>
600
					    </tr>
601
					      <td background="images/bg_action_norm.gif"><input type="checkbox" name="difilter" value="<%=enumDB_DIFF_REMOVED%>" <%=GetIsDiffFilterChecked(enumDB_DIFF_REMOVED)%>></td>
601
					    <tr>
602
					      <td nowrap background="images/bg_action_norm.gif" class="form_field"><%=LIMG_REMOVED%>Removed</td>
602
					      <td background="images/bg_action_norm.gif"><input type="checkbox" name="difilter" value="<%=enumDB_DIFF_REMOVED%>" <%=GetIsDiffFilterChecked(enumDB_DIFF_REMOVED)%>></td>
603
					    </tr>
603
					      <td nowrap background="images/bg_action_norm.gif" class="form_field"><%=LIMG_REMOVED%>Removed</td>
604
					    <tr>
604
					    </tr>
605
 
605
					    <tr>
606
					    <tr>
606
 
607
					      <td background="images/bg_action_norm.gif">&nbsp;</td>
607
					    <tr>
608
					      <td background="images/bg_action_norm.gif"><input name="btn" type="submit" class="form_btn" value="Hide"></td>
608
					      <td background="images/bg_action_norm.gif">&nbsp;</td>
609
					    </tr>
609
					      <td background="images/bg_action_norm.gif"><input name="btn" type="submit" class="form_btn" value="Hide"></td>
610
					  </table>
610
					    </tr>
611
					</div>
611
					  </table>
612
					</fieldset>
612
					</div>
613
					<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
613
					</fieldset>
614
					<%End If%>
614
					<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
615
					</td>
615
					<%End If%>
616
                    <td></td>
616
					</td>
617
                  </tr>
617
                    <td></td>
618
                </table>
618
                  </tr>
619
				
619
                </table>
620
				<%
620
				
621
				' Successfull Merge
621
				<%
622
				If (Request("btn") = "Merge") Then
622
				' Successfull Merge
623
					Call Messenger ( "Merge has completed successfully.", 3, "100%" )				
623
				If (Request("btn") = "Merge") Then
624
				End If
624
					Call Messenger ( "Merge has completed successfully.", 3, "100%" )				
625
 
625
				End If
626
				If (parSBOMA <> "") AND (parSBOMB <> "") Then%>  
626
 
627
                <table width="100%"  border="0" cellspacing="1" cellpadding="0">
627
				If (parSBOMA <> "") AND (parSBOMB <> "") Then%>  
628
                  <tr>
628
                <table width="100%"  border="0" cellspacing="1" cellpadding="0">
629
                    <td width="50%" bgcolor="#E4E9EC" class="body_row" nowrap><%= ReleaseIcon(objRelCollectorA.Item("official")) & objRelCollectorA.Item("location")%> </td>
629
                  <tr>
630
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="1"></td>
630
                    <td width="50%" bgcolor="#E4E9EC" class="body_row" nowrap><%= ReleaseIcon(objRelCollectorA.Item("official")) & objRelCollectorA.Item("location")%> </td>
631
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="20"></td>
631
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="1"></td>
632
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="1"></td>
632
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="20"></td>
633
                    <td width="50%" bgcolor="#E4E9EC" class="body_row" nowrap><%= ReleaseIcon(objRelCollectorB.Item("official")) & objRelCollectorB.Item("location")%></td>
633
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="1"></td>
634
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="1"></td>
634
                    <td width="50%" bgcolor="#E4E9EC" class="body_row" nowrap><%= ReleaseIcon(objRelCollectorB.Item("official")) & objRelCollectorB.Item("location")%></td>
635
                  </tr>
635
                    <td width="1" bgcolor="#E4E9EC"><img src="images/spacer.gif" width="20" height="1"></td>
636
			    <%
636
                  </tr>
637
 
637
			    <%
638
				OraDatabase.Parameters.Add "SBOM_A", 	parSBOMA,	ORAPARM_INPUT, ORATYPE_NUMBER 
638
 
639
				OraDatabase.Parameters.Add "SBOM_B", 	parSBOMB,	ORAPARM_INPUT, ORATYPE_NUMBER 
639
				OraDatabase.Parameters.Add "SBOM_A", 	parSBOMA,	ORAPARM_INPUT, ORATYPE_NUMBER 
640
				OraDatabase.Parameters.Add "NO_CHANGE", GetIsDiffFilterChecked(enumDB_DIFF_NO_CHANGE),		ORAPARM_INPUT, ORATYPE_VARCHAR2
640
				OraDatabase.Parameters.Add "SBOM_B", 	parSBOMB,	ORAPARM_INPUT, ORATYPE_NUMBER 
641
				OraDatabase.Parameters.Add "ADDED", 	GetIsDiffFilterChecked(enumDB_DIFF_NEW),		ORAPARM_INPUT, ORATYPE_VARCHAR2
641
				OraDatabase.Parameters.Add "NO_CHANGE", GetIsDiffFilterChecked(enumDB_DIFF_NO_CHANGE),		ORAPARM_INPUT, ORATYPE_VARCHAR2
642
				OraDatabase.Parameters.Add "UPDATED", 	GetIsDiffFilterChecked(enumDB_DIFF_UPDATED),		ORAPARM_INPUT, ORATYPE_VARCHAR2
642
				OraDatabase.Parameters.Add "ADDED", 	GetIsDiffFilterChecked(enumDB_DIFF_NEW),		ORAPARM_INPUT, ORATYPE_VARCHAR2
643
				OraDatabase.Parameters.Add "REMOVED", 	GetIsDiffFilterChecked(enumDB_DIFF_REMOVED),		ORAPARM_INPUT, ORATYPE_VARCHAR2
643
				OraDatabase.Parameters.Add "UPDATED", 	GetIsDiffFilterChecked(enumDB_DIFF_UPDATED),		ORAPARM_INPUT, ORATYPE_VARCHAR2
644
			
644
				OraDatabase.Parameters.Add "REMOVED", 	GetIsDiffFilterChecked(enumDB_DIFF_REMOVED),		ORAPARM_INPUT, ORATYPE_VARCHAR2
645
				Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("BOMDiff.sql"), cint(0))
645
			
646
				
646
				Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("BOMDiff.sql"), cint(0))
647
				OraDatabase.Parameters.Remove "SBOM_A"
647
				
648
				OraDatabase.Parameters.Remove "SBOM_B"
648
				OraDatabase.Parameters.Remove "SBOM_A"
649
				OraDatabase.Parameters.Remove "NO_CHANGE"
649
				OraDatabase.Parameters.Remove "SBOM_B"
650
				OraDatabase.Parameters.Remove "ADDED"
650
				OraDatabase.Parameters.Remove "NO_CHANGE"
651
				OraDatabase.Parameters.Remove "UPDATED"
651
				OraDatabase.Parameters.Remove "ADDED"
652
				OraDatabase.Parameters.Remove "REMOVED"
652
				OraDatabase.Parameters.Remove "UPDATED"
653
				
653
				OraDatabase.Parameters.Remove "REMOVED"
654
				Set rsQryA = OraDatabase.DbCreateDynaset( "SELECT pr.PROJ_NAME, br.BRANCH_NAME, b.BOM_VERSION ||'.'||b.BOM_LIFECYCLE  AS LOCATION, "&_
654
				
655
	"        pr.PROJ_ID, b.BOM_ID, br.BRANCH_ID"&_
655
				Set rsQryA = OraDatabase.DbCreateDynaset( "SELECT pr.PROJ_NAME, br.BRANCH_NAME, b.BOM_VERSION ||'.'||b.BOM_LIFECYCLE  AS LOCATION, "&_
656
	"  FROM BRANCHES br,"&_
656
	"        pr.PROJ_ID, b.BOM_ID, br.BRANCH_ID"&_
657
	"  		BOMS b,"&_	
657
	"  FROM BRANCHES br,"&_
658
	"  	    DM_PROJECTS pr"&_
658
	"  		BOMS b,"&_	
659
	" WHERE br.PROJ_ID = pr.PROJ_ID"&_
659
	"  	    DM_PROJECTS pr"&_
660
	" 	AND b.BRANCH_ID = br.BRANCH_ID"&_	
660
	" WHERE br.PROJ_ID = pr.PROJ_ID"&_
661
	"   AND b.BOM_ID ="&parSBOMA, cint(0))
661
	" 	AND b.BRANCH_ID = br.BRANCH_ID"&_	
662
 
662
	"   AND b.BOM_ID ="&parSBOMA, cint(0))
663
 
663
 
664
				Set rsQryB = OraDatabase.DbCreateDynaset( "SELECT pr.PROJ_NAME, br.BRANCH_NAME, b.BOM_VERSION ||'.'||b.BOM_LIFECYCLE  AS LOCATION, "&_
664
 
665
	"        pr.PROJ_ID, b.BOM_ID, br.BRANCH_ID"&_
665
				Set rsQryB = OraDatabase.DbCreateDynaset( "SELECT pr.PROJ_NAME, br.BRANCH_NAME, b.BOM_VERSION ||'.'||b.BOM_LIFECYCLE  AS LOCATION, "&_
666
	"  FROM BRANCHES br,"&_
666
	"        pr.PROJ_ID, b.BOM_ID, br.BRANCH_ID"&_
667
	"  		BOMS b,"&_	
667
	"  FROM BRANCHES br,"&_
668
	"  	    DM_PROJECTS pr"&_
668
	"  		BOMS b,"&_	
669
	" WHERE br.PROJ_ID = pr.PROJ_ID"&_
669
	"  	    DM_PROJECTS pr"&_
670
	" 	AND b.BRANCH_ID = br.BRANCH_ID"&_	
670
	" WHERE br.PROJ_ID = pr.PROJ_ID"&_
671
	"   AND b.BOM_ID ="&parSBOMB, cint(0))
671
	" 	AND b.BRANCH_ID = br.BRANCH_ID"&_	
672
				
672
	"   AND b.BOM_ID ="&parSBOMB, cint(0))
673
				While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
673
				
674
				VersionList = "0"
674
				While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
675
				errormsg = false
675
				VersionList = "0"
676
					rowId = rsQry("pv_id_a") &"_"& rsQry("pv_id_b")
676
				errormsg = false
677
					
677
					rowId = rsQry("pv_id_a") &"_"& rsQry("pv_id_b")
678
					btnMerge = LIMG_MERGE
678
					
679
					btnRemove = LIMG_REMOVE
679
					btnMerge = LIMG_MERGE
680
					colorA = LCOLOR_NOT_CHANGED
680
					btnRemove = LIMG_REMOVE
681
					colorB = LCOLOR_NOT_CHANGED
681
					colorA = LCOLOR_NOT_CHANGED
682
					
682
					colorB = LCOLOR_NOT_CHANGED
683
					Select Case rsQry("change_type")
683
					
684
						Case "U"
684
					Select Case rsQry("change_type")
685
							colorA = LCOLOR_CHANGED
685
						Case "U"
686
							colorB = LCOLOR_CHANGED							
686
							colorA = LCOLOR_CHANGED
687
						Case "UW"
687
							colorB = LCOLOR_CHANGED							
688
							colorA = LCOLOR_CHANGED
688
						Case "UW"
689
							colorB = LCOLOR_CHANGED
689
							colorA = LCOLOR_CHANGED
690
							btnMerge = LIMG_MERGE_WARN
690
							colorB = LCOLOR_CHANGED
691
						Case "A"
691
							btnMerge = LIMG_MERGE_WARN
692
							colorA = LCOLOR_BLANK
692
						Case "A"
693
						Case "R"
693
							colorA = LCOLOR_BLANK
694
							colorB = LCOLOR_BLANK
694
						Case "R"
695
					End Select
695
							colorB = LCOLOR_BLANK
696
					
696
					End Select
697
					Call GetDiffStateIcon ( rsQry("change_type"), ChangeTypeIcon )
697
					
698
				%>
698
					Call GetDiffStateIcon ( rsQry("change_type"), ChangeTypeIcon )
699
				  <tr>
699
				%>
700
                    <td class="body_row" nowrap>
700
				  <tr>
701
						<DIV id="PVA<%=rowId%>" style="background:<%=colorA%>; padding:5px;">
701
                    <td class="body_row" nowrap>
702
						<%=rsQry("pkg_name_a") &" "& rsQry("pkg_version_a")%>
702
						<DIV id="PVA<%=rowId%>" style="background:<%=colorA%>; padding:5px;">
703
						</DIV>
703
						<%=rsQry("pkg_name_a") &" "& rsQry("pkg_version_a")%>
704
						<input type="hidden" id="UNDOCOLORA_<%=rowId%>" value="<%=colorA%>">
704
						</DIV>
705
					</td>
705
						<input type="hidden" id="UNDOCOLORA_<%=rowId%>" value="<%=colorA%>">
706
                    <td bgcolor="#F5F5F5"></td>
706
					</td>
707
                    <td bgcolor="#E4E9EC"><DIV id="IMGSTATE<%=rowId%>" ><%=ChangeTypeIcon%></DIV><input type="hidden" id="CHANGETYPE_<%=rowId%>" value="<%=rsQry("change_type")%>"></td>
707
                    <td bgcolor="#F5F5F5"></td>
708
                    <td bgcolor="#F5F5F5"></td>
708
                    <td bgcolor="#E4E9EC"><DIV id="IMGSTATE<%=rowId%>" ><%=ChangeTypeIcon%></DIV><input type="hidden" id="CHANGETYPE_<%=rowId%>" value="<%=rsQry("change_type")%>"></td>
709
                    <td class="body_row" nowrap>
709
                    <td bgcolor="#F5F5F5"></td>
710
						<DIV id="PVB<%=rowId%>" style="background:<%=colorB%>; padding:5px;">
710
                    <td class="body_row" nowrap>
711
						<%=rsQry("pkg_name_b") &" "& rsQry("pkg_version_b")%>
711
						<DIV id="PVB<%=rowId%>" style="background:<%=colorB%>; padding:5px;">
712
						</DIV>
712
						<%=rsQry("pkg_name_b") &" "& rsQry("pkg_version_b")%>
713
						<input type="hidden" id="UNDOCOLORB_<%=rowId%>" value="<%=colorB%>">
713
						</DIV>
714
						<input type="hidden" name="addpkg" id="ADDPKG_<%=rowId%>" value="">
714
						<input type="hidden" id="UNDOCOLORB_<%=rowId%>" value="<%=colorB%>">
715
						<input type="hidden" name="removepkg" id="REMOVEPKG_<%=rowId%>" value="">
715
						<input type="hidden" name="addpkg" id="ADDPKG_<%=rowId%>" value="">
716
						<input type="hidden" id="UNDOPKG_<%=rowId%>" value="<%=rsQry("pkg_name_b") &" "& rsQry("pkg_version_b")%>">
716
						<input type="hidden" name="removepkg" id="REMOVEPKG_<%=rowId%>" value="">
717
					</td>
717
						<input type="hidden" id="UNDOPKG_<%=rowId%>" value="<%=rsQry("pkg_name_b") &" "& rsQry("pkg_version_b")%>">
718
                    <td bgcolor="#F5F5F5"><DIV id="IMGUNDO<%=rowId%>" style="display:none;" ><a href="javascript:;" onClick="UndoPackage( '<%=rowId%>' );"><%=LIMG_UNDO%></a></DIV></td>
718
					</td>
719
                  </tr> 
719
                    <td bgcolor="#F5F5F5"><DIV id="IMGUNDO<%=rowId%>" style="display:none;" ><a href="javascript:;" onClick="UndoPackage( '<%=rowId%>' );"><%=LIMG_UNDO%></a></DIV></td>
720
			<%
720
                  </tr> 
721
			rsQry.MoveNext
721
			<%
722
			WEnd
722
			rsQry.MoveNext
723
						
723
			WEnd
724
			rsQry.Close
724
						
725
			Set rsQry = Nothing
725
			rsQry.Close
726
			%>				  
726
			Set rsQry = Nothing
727
                </table>
727
			%>				  
728
                <br>
728
                </table>
729
			<%Else%>	
729
                <br>
730
				<br>
730
			<%Else%>	
731
				<%
731
				<br>
732
				If (parRtagB <> "") Then
732
				<%
733
					Call Messenger ( "Select <b>SBOM A</b> to compare.", 3, "100%" )					
733
				If (parRtagB <> "") Then
734
				ElseIf (parRtagA <> "") Then
734
					Call Messenger ( "Select <b>SBOM A</b> to compare.", 3, "100%" )					
735
					Call Messenger ( "Select <b>SBOM B</b> to compare.", 3, "100%" )					
735
				ElseIf (parRtagA <> "") Then
736
				Else
736
					Call Messenger ( "Select <b>SBOM B</b> to compare.", 3, "100%" )					
737
					Call Messenger ( "Select <b>SBOM A</b> and <b>SBOM B</b> to compare.", 3, "100%" )					
737
				Else
738
				End If
738
					Call Messenger ( "Select <b>SBOM A</b> and <b>SBOM B</b> to compare.", 3, "100%" )					
739
				%>
739
				End If
740
				
740
				%>
741
			<%End If%>
741
				
742
				
742
			<%End If%>
743
				</td>
743
				
744
                <td width="1%" background="images/lbox_bgside_white.gif">&nbsp;</td>
744
				</td>
745
              </tr>
745
                <td width="1%" background="images/lbox_bgside_white.gif">&nbsp;</td>
746
              <tr> 
746
              </tr>
747
                <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom"><img src="images/lbox_bl_cnr_b.gif" width="13" height="13"></td>
747
              <tr> 
748
                <td background="images/lbox_bg_blue.gif"></td>
748
                <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom"><img src="images/lbox_bl_cnr_b.gif" width="13" height="13"></td>
749
                <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom" align="right"><img src="images/lbox_br_cnr_b.gif" width="13" height="13"></td>
749
                <td background="images/lbox_bg_blue.gif"></td>
750
              </tr>
750
                <td width="1%" background="images/lbox_bg_blue.gif" valign="bottom" align="right"><img src="images/lbox_br_cnr_b.gif" width="13" height="13"></td>
751
            </table>
751
              </tr>
752
          </td>
752
            </table>
753
        </tr>
753
          </td>
754
      </table>
754
        </tr>
755
    <!-- DIFF END ---------------------------------------------------->
755
      </table>
756
    </td>
756
    <!-- DIFF END ---------------------------------------------------->
757
	<td valign="top" width="1%" background="images/bg_lightgreen.gif"> 
757
    </td>
758
	
758
	<td valign="top" width="1%" background="images/bg_lightgreen.gif"> 
759
	
759
	
760
	  <!-- SELECT SBOM B ---------------------------------------------->
760
	
761
      <br>
761
	  <!-- SELECT SBOM B ---------------------------------------------->
762
      <table width="100%"  border="0" cellspacing="10" cellpadding="0">
762
      <br>
763
		<tr>
763
      <table width="100%"  border="0" cellspacing="10" cellpadding="0">
764
          <td align="left" class="body_col"><img src="images/i_rtag_open_mode.gif" border="0" align="absmiddle" width="15" height="13">&nbsp;Select SBOM B<hr size="1px" color="Olive" noshade></td>
764
		<tr>
765
        </tr>
765
          <td align="left" class="body_col"><img src="images/i_rtag_open_mode.gif" border="0" align="absmiddle" width="15" height="13">&nbsp;Select SBOM B<hr size="1px" color="Olive" noshade></td>
766
<!--         <tr>
766
        </tr>
767
          <td align="left">
767
<!--         <tr>
768
		  <select name="projB" class="form_item" onChange="RequestReleaseCombo( '?proj_id='+ this.value, FormName.rtagB );">
768
          <td align="left">
769
              <option value="">-- Select Project --</option>
769
		  <select name="projB" class="form_item" onChange="RequestReleaseCombo( '?proj_id='+ this.value, FormName.rtagB );">
770
			  <%
770
              <option value="">-- Select Project --</option>
771
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorB.Item("proj_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
771
			  <%
772
			  
772
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorB.Item("proj_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
773
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProjectsCombo.sql"), cint(0))
773
			  
774
			  
774
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProjectsCombo.sql"), cint(0))
775
			  OraDatabase.Parameters.Remove "PROJ_ID"
775
			  
776
			  
776
			  OraDatabase.Parameters.Remove "PROJ_ID"
777
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
777
			  
778
                <option value="<%=rsQry("proj_id")%>" <%=rsQry("selected")%>><%=rsQry("proj_name")%></option>
778
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
779
              <%rsQry.MoveNext
779
                <option value="<%=rsQry("proj_id")%>" <%=rsQry("selected")%>><%=rsQry("proj_name")%></option>
780
			  WEnd
780
              <%rsQry.MoveNext
781
			  
781
			  WEnd
782
			  rsQry.Close
782
			  
783
			  Set rsQry = Nothing
783
			  rsQry.Close
784
			%>
784
			  Set rsQry = Nothing
785
          </select></td>
785
			%>
786
        </tr>
786
          </select></td>
787
        <tr>
787
        </tr>
788
          <td align="left">
788
        <tr>
789
		  
789
          <td align="left">
790
		  <select name="rtagB" id="rtagB" class="form_item" onChange="RequestSBOMCombo( '?branch_id='+ this.value, FormName.sbomB );">
790
		  
791
              <option value="">-- Select SBOM --</option>		  
791
		  <select name="rtagB" id="rtagB" class="form_item" onChange="RequestSBOMCombo( '?branch_id='+ this.value, FormName.sbomB );">
792
			  <%
792
              <option value="">-- Select SBOM --</option>		  
793
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorB.Item("proj_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
793
			  <%
794
			  OraDatabase.Parameters.Add "BRANCH_ID", 	objRelCollectorB.Item("branch_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
794
			  OraDatabase.Parameters.Add "PROJ_ID", 	objRelCollectorB.Item("proj_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
795
			  
795
			  OraDatabase.Parameters.Add "BRANCH_ID", 	objRelCollectorB.Item("branch_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
796
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ReleasesCombo.sql"), cint(0))
796
			  
797
			  
797
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ReleasesCombo.sql"), cint(0))
798
			  OraDatabase.Parameters.Remove "PROJ_ID"
798
			  
799
			  OraDatabase.Parameters.Remove "BRANCH_ID"
799
			  OraDatabase.Parameters.Remove "PROJ_ID"
800
			  
800
			  OraDatabase.Parameters.Remove "BRANCH_ID"
801
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
801
			  
802
                <option value="<%=rsQry("branch_id")%>" <%=rsQry("selected")%>><%=rsQry("branch_name")%></option>
802
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
803
              <%rsQry.MoveNext
803
                <option value="<%=rsQry("branch_id")%>" <%=rsQry("selected")%>><%=rsQry("branch_name")%></option>
804
			  WEnd
804
              <%rsQry.MoveNext
805
			  
805
			  WEnd
806
			  rsQry.Close
806
			  
807
			  Set rsQry = Nothing
807
			  rsQry.Close
808
			  %>
808
			  Set rsQry = Nothing
809
		  </select></td>
809
			  %>
810
        </tr> -->
810
		  </select></td>
811
        <tr>
811
        </tr> -->
812
          <td align="left">
812
        <tr>
813
 
813
          <td align="left">
814
 
814
 
815
		  <select name="sbomB" id="sbomB" class="form_item">
815
 
816
            <%
816
		  <select name="sbomB" id="sbomB" class="form_item">
817
			Dim nBranchId
817
            <%
818
			If objAccessControl.IsActive("Vasttrafik")	Then
818
			Dim nBranchId
819
				nBranchId	=	1142
819
			If objAccessControl.IsActive("Vasttrafik")	Then
820
			Else
820
				nBranchId	=	1142
821
				nBranchId	=	542
821
			Else
822
			End	If
822
				nBranchId	=	542
823
			
823
			End	If
824
			  OraDatabase.Parameters.Add "BOM_ID", 	objRelCollectorB.Item("bom_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
824
			
825
			  OraDatabase.Parameters.Add "BRANCH_ID", 	nBranchId,	ORAPARM_INPUT, ORATYPE_NUMBER 
825
			  OraDatabase.Parameters.Add "BOM_ID", 	objRelCollectorB.Item("bom_id"),	ORAPARM_INPUT,  ORATYPE_NUMBER 
826
 
826
			  OraDatabase.Parameters.Add "BRANCH_ID", 	nBranchId,	ORAPARM_INPUT, ORATYPE_NUMBER 
827
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProductionTreeCombo.sql"), cint(0))
827
 
828
			  
828
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProductionTreeCombo.sql"), cint(0))
829
			  OraDatabase.Parameters.Remove "BOM_ID"
829
			  
830
			  OraDatabase.Parameters.Remove "BRANCH_ID"
830
			  OraDatabase.Parameters.Remove "BOM_ID"
831
			  
831
			  OraDatabase.Parameters.Remove "BRANCH_ID"
832
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
832
			  
833
            <option value="<%=rsQry("bom_id")%>" <%=rsQry("selected")%>><%=rsQry("bom_name")%>&gt;<%=rsQry("bom_version")%></option>
833
			  While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%>
834
            <%rsQry.MoveNext
834
            <option value="<%=rsQry("bom_id")%>" <%=rsQry("selected")%>><%=rsQry("bom_name")%>&gt;<%=rsQry("bom_version")%></option>
835
			  WEnd
835
            <%rsQry.MoveNext
836
			  
836
			  WEnd
837
			  rsQry.Close
837
			  
838
			  Set rsQry = Nothing
838
			  rsQry.Close
839
			  %>
839
			  Set rsQry = Nothing
840
          </select>
840
			  %>
841
 
841
          </select>
842
		  
842
 
843
		  </td>
843
		  
844
        </tr>
844
		  </td>
845
		<%If (parRtagB <> "") Then%>  
845
        </tr>
846
<!-- 		<tr>
846
		<%If (parRtagB <> "") Then%>  
847
          <td align="left"><a href="Bom_home.asp?bom_id=<%=parSBOMB%>" class="body_txt_drk">Go To SBOM B &raquo;</a></td>
847
<!-- 		<tr>
848
        </tr> -->
848
          <td align="left"><a href="Bom_home.asp?bom_id=<%=parSBOMB%>" class="body_txt_drk">Go To SBOM B &raquo;</a></td>
849
		<%End If%>
849
        </tr> -->
850
      </table>
850
		<%End If%>
851
      <!-- SELECT RELEASE B END ---------------------------------------------->	  </td>
851
      </table>
852
  </tr>
852
      <!-- SELECT RELEASE B END ---------------------------------------------->	  </td>
853
  <tr> 
853
  </tr>
854
    <td valign="bottom" align="center" background="images/bg_lightgreen.gif"><img src="images/img_vtree.gif" width="86" height="99" vspace="20" hspace="30"></td>
854
  <tr> 
855
    <td background="images/bg_lght_gray.gif" valign="top"><img src="images/h_trsp_dot.gif" width="1" height="500"></td>
855
    <td valign="bottom" align="center" background="images/bg_lightgreen.gif"><img src="images/img_vtree.gif" width="86" height="99" vspace="20" hspace="30"></td>
856
	<td valign="bottom" background="images/bg_lightgreen.gif" align="center"><img src="images/img_vtree.gif" width="86" height="99" vspace="20" hspace="30"></td>
856
    <td background="images/bg_lght_gray.gif" valign="top"><img src="images/h_trsp_dot.gif" width="1" height="500"></td>
857
  </tr>
857
	<td valign="bottom" background="images/bg_lightgreen.gif" align="center"><img src="images/img_vtree.gif" width="86" height="99" vspace="20" hspace="30"></td>
858
</table>
858
  </tr>
859
</form>
859
</table>
860
<!-- FOOTER -->
860
</form>
861
<!--#include file="_footer.asp"-->
861
<!-- FOOTER -->
862
<%
862
<!--#include file="_footer.asp"-->
863
	'If email Then
863
<%
864
	
864
	'If email Then
865
		'Dim myMail, LocalPath
865
	
866
		'Set myMail=Server.CreateObject("Persits.MailSender")
866
		'Dim myMail, LocalPath
867
		'LocalPath = Server.MapPath("docs\compareBoms_"&objAccessControl.UserName&".html")
867
		'Set myMail=Server.CreateObject("Persits.MailSender")
868
		
868
		'LocalPath = Server.MapPath("docs\compareBoms_"&objAccessControl.UserName&".html")
869
	'	myMail.Host = SMTP_HOST
869
		
870
	'	myMail.Subject="BOM Comparisons from Deployment Manager"
870
	'	myMail.Host = SMTP_HOST
871
	'	myMail.From="releasem@erggroup.com"
871
	'	myMail.Subject="BOM Comparisons from Deployment Manager"
872
	'	myMail.AddAddress objAccessControl.UserEmail
872
	'	myMail.From="releasem@erggroup.com"
873
		' Attach the file
873
	'	myMail.AddAddress objAccessControl.UserEmail
874
	'	myMail.AddAttachment LocalPath
874
		' Attach the file
875
	'	myMail.Body = "Your requested report..."
875
	'	myMail.AddAttachment LocalPath
876
	'	myMail.Send
876
	'	myMail.Body = "Your requested report..."
877
		
877
	'	myMail.Send
878
	'	set myMail=nothing
878
		
879
		
879
	'	set myMail=nothing
880
	'End If
880
		
881
%>
881
	'End If
882
</body>
882
%>
883
</html>
883
</body>
884
<%
884
</html>
885
Call Destroy_All_Objects
885
<%
886
%>
886
Call Destroy_All_Objects
-
 
887
%>
887
<!--#include file="common/globals_destructor.asp"-->
888
<!--#include file="common/globals_destructor.asp"-->
888
889