Subversion Repositories DevTools

Rev

Rev 6579 | Rev 6873 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5478 dpurdie 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
4
'   unused_packages.asp
5
'   Display unused packages in the current release
6
'   Does not include packages marked as deployable ?
7
'=====================================================
8
%>
9
<%
10
Option explicit
11
' Good idea to set when using redirect
12
Response.Expires = 0	        ' always load the page, dont store
13
Const allowNoPackage = TRUE     ' Allow page display without pvid being present
14
Server.ScriptTimeout=300        ' To enable the script timeout to 5 mins
15
%>
16
<!--#include file="common/conf.asp"-->
17
<!--#include file="common/globals.asp"-->
18
<!--#include file="common/formating.asp"-->
19
<!--#include file="common/qstr.asp"-->
20
<!--#include file="common/common_subs.asp"-->
21
<!--#include file="common/common_dbedit.asp"-->
22
<!--#include file="common/_package_common.asp"-->
23
<!--#include file="common/release_changed.asp"-->
24
<%
25
'------------ ACCESS CONTROL ------------------
26
%>
6181 dpurdie 27
<!--#include file="_access_control_login_optional.asp"-->
5478 dpurdie 28
<!--#include file="_access_control_general.asp"-->
29
<%
30
'------------ Variable Definition -------------
31
Dim	rsQry
32
Dim enableRemoval : enableRemoval = FALSE
33
Dim enabledText : enabledText = "disabled "
6123 dpurdie 34
Dim parMode : parMode = QStrParDefault("mode", 0)
35
Dim modeCb1 : modeCb1 = iif ( parMode AND 1, " checked", "" ) 
36
Dim modeCb2 : modeCb2 = iif ( parMode AND 2, " checked", "" ) 
37
Dim modeCb3 : modeCb3 = iif ( parMode AND 4, " checked", "" ) 
5478 dpurdie 38
 
39
'------------ Constants Declaration -----------
40
'------------ Variable Init -------------------
41
'----------------------------------------------
42
'------------------------- MAIN LINE ---------------------------
43
 
44
If Request("action") = "RemovePackages" AND Request("list_pv_id") <> "" Then
45
    Dim pvidArray, nPvId
46
    pvidArray = Split(Request("list_pv_id"), ",")
47
    For Each nPvId in pvidArray
48
 
49
        nPvId = Trim(nPvId)
50
 
51
        Dim objRC: Set objRC = New ReleaseChanged
52
        Call objRC.Get_Package_Info (parRtag_id,nPvId)
53
        Dim bReleased: bReleased = objRC.IsReleased(parRtag_id,nPvId)
54
 
55
        OraDatabase.Parameters.Add "PV_ID",       nPvId,                  ORAPARM_INPUT, ORATYPE_NUMBER
56
        OraDatabase.Parameters.Add "RTAG_ID",     parRtag_id,             ORAPARM_INPUT, ORATYPE_NUMBER
57
        OraDatabase.Parameters.Add "USER_ID",     objAccessControl.UserId,ORAPARM_INPUT, ORATYPE_NUMBER
58
        OraDatabase.Parameters.Add "RETURN_CODE", NULL,                   ORAPARM_OUTPUT, ORATYPE_NUMBER
59
        OraDatabase.Parameters.Add "FORCE_REMOVE","N",                    ORAPARM_INPUT, ORATYPE_NUMBER
60
 
61
        objEH.TryORA ( OraSession )
62
        On Error Resume Next
63
 
64
        OraDatabase.ExecuteSQL _
65
        "BEGIN "&_
66
        "   :RETURN_CODE := PK_ENVIRONMENT.REMOVE_PACKAGE ( :PV_ID, :RTAG_ID, :USER_ID, :FORCE_REMOVE );"&_
67
        "END; "
68
 
69
        objEH.CatchORA ( OraSession )
70
 
71
        OraDatabase.Parameters.Remove "PV_ID"
72
        OraDatabase.Parameters.Remove "RTAG_ID"
73
        OraDatabase.Parameters.Remove "USER_ID"
5952 dpurdie 74
        OraDatabase.Parameters.Remove "RETURN_CODE"
5478 dpurdie 75
        OraDatabase.Parameters.Remove "FORCE_REMOVE"
76
 
77
        If Not objEH.LastOraFailed Then
78
         If bReleased Then
79
           Call objRC.Run_ReleaseChanged(parRtag_id,nPvId,enumRELEASE_CHANGE_MODE_PKG_REMOVED,false)
80
         End If  
81
        End If  
82
 
83
        Set objRC = Nothing
84
 
85
   Next
86
End If
87
'---------------------------------------------------------------
88
%>
89
<html>
90
<head>
91
<title><%=Title(parRtag_id)%></title>
92
<link rel="shortcut icon" href="<%=FavIcon%>"/>
93
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
94
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6579 dpurdie 95
<link rel="stylesheet" href="images/release_manager_style.css?ver=<%=VixVerNum%>" type="text/css">
96
<link rel="stylesheet" href="images/navigation.css?ver=<%=VixVerNum%>" type="text/css">
97
<script language="JavaScript" src="images/common.js?ver=<%=VixVerNum%>"></script>
98
<script language="JavaScript" src="scripts/remote_scripting.js?ver=<%=VixVerNum%>"></script>
5478 dpurdie 99
<!--#include file="_jquery_includes.asp"-->
100
<!-- TIPS -->
6579 dpurdie 101
<script language="JavaScript" src="images/tipster.js?ver=<%=VixVerNum%>"></script>
102
<script language="JavaScript" src="images/_help_tips.js?ver=<%=VixVerNum%>"></script>
5478 dpurdie 103
<!-- DROPDOWN MENUS -->
104
<!--#include file="_menu_def.asp"-->
6579 dpurdie 105
<script language="JavaScript1.2" src="images/popup_menu.js?ver=<%=VixVerNum%>"></script>
6123 dpurdie 106
<script>
107
    function updateDisplay()
108
    {
109
        function getCbValue(n){
110
            var el = document.getElementById(n);
111
            if (el && el.checked) {
112
                return parseInt(el.value);
113
            }
114
            return 0;
115
        }
116
        var  all = getCbValue('cb1') + getCbValue('cb2') + getCbValue('cb3');
117
        console.log ('all:', all );
118
        location.href='<%=ScriptName%>?rtag_id=<%=parRtag_id%>&mode=' + all;
119
    }
120
</script>
5478 dpurdie 121
</head>
5481 dpurdie 122
<body bgcolor="White" text="Black" leftmargin=0 topmargin=0 onLoad="divProgressBar.style.visibility='hidden'">
5478 dpurdie 123
<!-- HEADER -->
124
<!--#include file="_header.asp"-->
125
<!-- BODY ---->
126
<table width="100%" border="0" cellspacing="0" cellpadding="0">
127
	<tr>
128
		<td valign="top" width="1" background="images/bg_bage.gif">
129
		<!-- LEFT -->
130
		<!--#include file="_environment.asp"-->
131
		</td>
132
		<td width="1" bgcolor="#999999"><img src="images/h_trsp_dot.gif" width="1" height="1"></td>
133
		<td valign="top" width="100%">
134
		<!-- MIDDLE -->
135
          <%
136
          ' Determine if the current user can remove packages from this release
137
          If releaseIsWritable(ReleaseMode) Then
138
              enableRemoval = TRUE
139
              enabledText = ""
140
          End If
141
 
142
          Dim Query_String
143
          Query_String = ReadFile( rootPath & "queries\rep_obsolete_packages.sql" )
144
          OraDatabase.Parameters.Add "RTAG_ID", parRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
6123 dpurdie 145
          OraDatabase.Parameters.Add "SMODE", parMode, ORAPARM_INPUT, ORATYPE_NUMBER
5478 dpurdie 146
          %>
147
          <form method="post" name="removePackages">
148
          <table class="embedded_table" width="10%">
149
             <tr>
150
                <td width="1%" nowrap class="body_colb">&nbsp;</td>
151
                <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
152
                <td width="1%" nowrap class="body_colb">Released&nbsp;&nbsp;&nbsp;</td>
153
                <td width="1%" nowrap class="body_colb">Added to Release&nbsp;&nbsp;&nbsp;</td>
154
                <td width="1%" nowrap class="body_colb"></td>
155
             </tr>
156
             <tr>
157
                <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
158
             </tr>
159
             <%
160
             Dim currView_id
161
             currView_id = -1
162
             Dim rsRep
163
             Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
5952 dpurdie 164
             OraDatabase.Parameters.Remove "RTAG_ID"
6123 dpurdie 165
             OraDatabase.Parameters.Remove "SMODE"
5478 dpurdie 166
 
167
             If rsRep.RecordCount = 0 Then
168
                With Response
169
                   .write "<tr>"
170
                   .write "<td colspan='5' class='body_row'>Found 0 records</td>"
171
                   .write "</tr>"
172
                End With
173
             End If
174
 
175
             While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
176
                ' -------- GROUP BY BASE VIEW  -----------------
177
                If CDbl(currView_id) <> CDbl(rsRep("view_id")) Then
178
                   %>
179
                   <tr>
180
                      <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
181
                      <td></td>
182
                   </tr>
183
                   <tr>
184
                      <td nowrap class="body_scol"><%=rsRep("view_name")%></td>
185
                      <td class="body_scol"></td>
186
                      <td class="body_scol"></td>
187
                      <td class="body_scol"></td>
188
                      <td class="body_scol"></td>
189
                   </tr>
190
                   <%
191
                   currView_id = CDbl(rsRep("view_id"))
192
                End If
193
                ' -------- END GROUP ------------------------
194
                %>
195
                <tr>
196
                   <td class="body_row"></td>
197
                   <td nowrap class="body_row"><a href="used_by.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=parRtag_id%>" class="txt_linked"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></a></td>
6610 dpurdie 198
                   <td nowrap class="body_row"><%=DisplayDate( rsRep("modified_stamp") )%> by <%=emailField(rsRep("modifier"),rsRep("modifier_email"))%>&nbsp;&nbsp;&nbsp;</td>
199
                   <td nowrap class="body_row"><%=DisplayDate( rsRep("insert_stamp") )%> by <%=emailField(rsRep("insertor"),rsRep("insertor_email"))%>&nbsp;&nbsp;&nbsp;</td>
5478 dpurdie 200
                   <td nowrap class="body_row"><input type="checkbox" name="list_pv_id" <%=enabledText%> value="<%=rsRep("pv_id")%>"></td>
201
                </tr>
202
                <%  rsRep.MoveNext
203
             WEnd
5952 dpurdie 204
             rsRep.Close
205
             Set rsRep = Nothing
5478 dpurdie 206
             %>
207
             <tr>
208
                <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
209
             </tr>
210
             <tr>
6123 dpurdie 211
                <td class="body_scol" colspan="1" ><%=ProgressBar()%></td>
212
                <td class="body_scol" colspan="4" style="text-align:right">
213
                    <fieldset  class="fset" align="left" style="border: 1px groove;display: inline;">
214
                        <legend  style="text-align: left;">Hide</legend>    
215
                        <input id=cb1 type="checkbox" value=1 <%=modeCb1%> onclick="return updateDisplay();">Products
216
                        <input id=cb2 type="checkbox" value=2 <%=modeCb2%> onclick="return updateDisplay();">3rdParty
217
                        <input id=cb3 type="checkbox" value=4 <%=modeCb3%> onclick="return updateDisplay();">Deployable
218
                    </fieldset>    
5481 dpurdie 219
                    <input type="submit" value="Remove from Release" <%=enabledText%> onclick="return vixConfirm('Remove all selected packages from this Release',{post: 'removePackages', progress:'#divProgressBar'})">
5478 dpurdie 220
                </td>
221
             </tr>
222
             <tr>
223
                <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
224
             </tr>
225
             <tr>
226
                <td colspan="5" class=body_txt>
227
                These packages are not used within this Release. There is no package that lists any of these packages as a dependent.
228
                <p>The named packages can be removed without breaking the build, although they may be required for test purposes.
6123 dpurdie 229
                <p>Certain classes of package may be hidden:
230
                <br>Packages in the 'PRODUCTS' or 'AUTO PRODUCTS' are often assumed to be used.
231
                <br>Packages in the '3RDPARTY_PRODUCTS' are often artfacts of Deploment Manager.
232
                <br>Packages marked as 'Deployable' may be assumed to be used.
233
                <br>Packages that are imported as part of an SDK are not shown.
5478 dpurdie 234
                <p>Removing one or more packages may result in other packages nolonger being used.
235
                </td>
236
             </tr>
237
          </table>
238
          <input type="hidden" name="action" value="RemovePackages">
239
          </form>
240
        <!-- End of Middle -->
241
		</td>
242
	</tr>
243
</table>
244
<!-- FOOTER -->
245
<!--#include file="_footer.asp"-->
246
</body>
247
</html>