Subversion Repositories DevTools

Rev

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

Rev Author Line No. Line
125 ghuddy 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
6617 dpurdie 4
'
5
'   RequestTop10Changes.asp
6
'
125 ghuddy 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
%>
14
<!--#include file="common/conf.asp"-->
15
<!--#include file="common/globals.asp"-->
16
<!--#include file="common/formating.asp"-->
17
<!--#include file="common/qstr.asp"-->
18
<!--#include file="common/common_subs.asp"-->
19
<%
20
'------------ Variable Definition -------------
21
Dim rsTemp
22
Dim parInterval
6615 dpurdie 23
Dim BaseId
125 ghuddy 24
'------------ Constants Declaration -----------
25
'------------ Variable Init -------------------
6617 dpurdie 26
parInterval = RequestDefault("Interval", 7)
125 ghuddy 27
'----------------------------------------------
28
%>
29
<%
30
'------------------------------------------------------------------------------------------------------------------------
31
' Thus function formulates a query that is intended to find the top 10 packages that have changed the most in a period of
32
' time, limited in scope to those packages that have at least one version in the specified release.
33
' The function relies upon the user of this ASP file having setup the Interval parameter as needed (see RequestReleasePackages.asp)
34
Function formQueryString
35
 
36
   Dim qs
37
 
38
   ' For each package ID in a release
39
   '    For each package version across all projects and releases (have to do this due to schema limitations)
40
   '       If the package version extension is the same as that being used currently in the release
41
   '          If the package version is locked, and is not a ripple
42
   '             Increment a count for this package ID
43
   ' Return the 10 package IDs with the highest counts
6617 dpurdie 44
   qs  = " SELECT ordered_changed.pkg_id, ordered_changed.pkg_name || pv_outer.v_ext as pkg_name, pv_outer.v_ext, pv_outer.pv_id, pv_outer.pkg_version, ordered_changed.NumberOfChanges" _
125 ghuddy 45
       & " FROM RELEASE_CONTENT rc_outer, PACKAGE_VERSIONS pv_outer,                                        " _
46
       & " (                                                                                                " _
47
       & "    SELECT * FROM (                                                                               " _
48
       & "       SELECT changed.pkg_name, changed.pkg_id, COUNT(changed.pkg_name) as NumberOfChanges FROM ( " _
49
       & "          SELECT PACKAGES.pkg_name, PACKAGES.pkg_id                                               " _
50
       & "          FROM   PACKAGE_VERSIONS changed_package_versions, PACKAGES                              " _
6617 dpurdie 51
       & "          WHERE  changed_package_versions.pkg_id      = PACKAGES.pkg_id                           " _
52
       & "          AND    changed_package_versions.MODIFIED_STAMP >= (ORA_SYSDATE - :DAYS)                 " _
125 ghuddy 53
       & "          AND    changed_package_versions.build_type <> 'Y'                                       " _
54
       & "          AND    changed_package_versions.dlocked     = 'Y'                                       " _
55
       & "          AND    changed_package_versions.pkg_id IN (                                             " _
56
       & "                    SELECT pkg_id FROM PACKAGE_VERSIONS WHERE pv_id IN (                          " _
57
       & "                       SELECT pv_id                                                               " _
58
       & "                       FROM   RELEASE_CONTENT                                                     " _
59
       & "                       WHERE  RELEASE_CONTENT.rtag_id = :rtag_id                                  " _
60
       & "                    )                                                                             " _
61
       & "                 )                                                                                " _
62
       & "          AND    changed_package_versions.v_ext IN (                                              " _
63
       & "                    SELECT v_ext FROM PACKAGE_VERSIONS, RELEASE_CONTENT                           " _
64
       & "                    WHERE  PACKAGE_VERSIONS.pv_id  = RELEASE_CONTENT.pv_id                        " _
65
       & "                    AND    PACKAGE_VERSIONS.pkg_id = changed_package_versions.pkg_id              " _
66
       & "                    AND    RELEASE_CONTENT.rtag_id = :rtag_id                                     " _
67
       & "                 )                                                                                " _
68
       & "       ) changed                                                                                  " _
69
       & "       GROUP BY changed.pkg_name, changed.pkg_id                                                  " _
70
       & "       ORDER BY NumberOfChanges DESC                                                              " _
6617 dpurdie 71
       & "    ) WHERE ROWNUM < 21                                                                           " _
125 ghuddy 72
       & " ) ordered_changed                                                                                " _
73
       & " WHERE                                                                                            " _
74
       & "   ordered_changed.pkg_id = pv_outer.pkg_id                                                       " _
75
       & "   AND rc_outer.rtag_id   = :rtag_id                                                              " _
6615 dpurdie 76
       & "   AND rc_outer.pv_id     = pv_outer.pv_id                                                        " _
77
       & "   order by upper(pkg_name) "
125 ghuddy 78
 
79
   formQueryString = qs
80
End Function
81
 
82
'------------------------------------------------------------------------------------------------------------------------
83
%>
84
<%
85
'------------------------ MAIN LINE ---------------------------------
86
'--------------------------------------------------------------------
6615 dpurdie 87
OraDatabase.Parameters.Add "RTAG_ID", Request("rtag_id"),    ORAPARM_INPUT, ORATYPE_NUMBER
6617 dpurdie 88
OraDatabase.Parameters.Add "DAYS",   parInterval,           ORAPARM_INPUT, ORATYPE_NUMBER
6615 dpurdie 89
Set rsTemp = OraDatabase.DbCreateDynaset( formQueryString, cint(0))
6617 dpurdie 90
OraDatabase.Parameters.Remove "DAYS"
6615 dpurdie 91
OraDatabase.Parameters.Remove "RTAG_ID"
125 ghuddy 92
%>
6615 dpurdie 93
<!-- RequestTop10Changes.asp -->
125 ghuddy 94
<table width="100%" border="0" cellspacing="1" cellpadding="1">
6615 dpurdie 95
 
96
<%If rsTemp.RecordCount < 1 Then %>
97
   <tr class="form_field_grey_bg">
98
      <td nowrap class="body_row">None Found</td>
99
   </tr>
100
<% Else %>
101
    <tr class="form_field_bg">
102
      <td class="form_field_bg">
125 ghuddy 103
         <table width="100%" border="0" cellspacing="1" cellpadding="1">
104
            <tr>
6618 dpurdie 105
               <td nowrap class="body_row" valign="top">Package Name</td>
106
               <td nowrap class="body_row" valign="top" width="1%">Changes<%=Quick_Help("Top10ChangeCounts")%></td>
125 ghuddy 107
            </tr>
108
            <%
109
               While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
6615 dpurdie 110
                BaseId = "TOP10_I" & parInterval & "_" & Request("rtag_id") & "_" & rsTemp("pv_id") 
125 ghuddy 111
               %>
6615 dpurdie 112
                <tr class="form_field_grey_bg">
113
                    <td nowrap class="body_row">
6617 dpurdie 114
                       <a href="javascript://rtag_id=<%=Request("rtag_id")%>&pv_id=<%=rsTemp("pv_id")%>;" class="txt_linked" onClick="ToggleLoadControl('<%=BaseId%>','RequestPackageVersionHistoryMetrics.asp?rtag_id=<%=Request("rtag_id")%>&pv_id=<%=rsTemp("pv_id")%>&mode=1&interval=<%=parInterval%>');"><img id='IMG_<%=BaseId%>' src="images/bt_plus.gif" border="0" align="absmiddle" hspace="3"><img src="images/i_world.gif" border="0" align="absmiddle" hspace="3"></a>
115
                       <a href ="view_by_version.asp?pkg_id=<%=rsTemp("pkg_id")%>&fpkgversion=*<%=rsTemp("v_ext")%>"><%=rsTemp("pkg_name")%></a>
6615 dpurdie 116
                    </td>
6618 dpurdie 117
                    <td nowrap class="body_row tright">
125 ghuddy 118
                        <%=rsTemp("NumberOfChanges")%>
6615 dpurdie 119
                    </td>
120
                </tr>
121
                <tr class="form_field_bg" id="TGL_<%=BaseId%>" style="display:none;">
6618 dpurdie 122
                    <td nowrap class="body_row"><div class='subSectionIndent' id='<%=BaseId%>'><%=enumLOADING%></div></td>
6615 dpurdie 123
                </tr>
124
                <%rsTemp.MoveNext
125 ghuddy 125
               WEnd
126
            %>
127
         </table>
128
      </td>
129
   </tr>
6615 dpurdie 130
<%End If%>
125 ghuddy 131
</table>
132
<br>
133
<%
6615 dpurdie 134
rsTemp.Close
135
Set rsTemp = nothing
136
%>
137
<%
125 ghuddy 138
Call Destroy_All_Objects
139
%>