Subversion Repositories DevTools

Rev

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

<%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'|                                                   |
'|                                wFormApproval                                  |
'|                                                   |
'=====================================================
%>
<%
Option explicit
Response.Expires = 0
%>
<!--#include file="common/globals.asp"-->
<!--#include file="common/config.asp"-->
<!--#include file="common/common_subs.asp"-->
<!--#include file="common/_popup_window_common.asp"-->
<!--#include file="common/formating.asp"-->
<%
'------------ ACCESS CONTROL ------------------
%>
<!--#include file="_access_control_general.asp"-->
<%
'------------ VARIABLE DEFINITION -------------
Dim objFormCollector
Dim aRs
Dim MoreLink
Dim parFilter_on
Dim ForceDropdown
Dim rsQry
'------------ CONSTANTS DECLARATION -----------
'------------ VARIABLE INIT -------------------
parProd_id = Request("pv_id")

parBom_id = Request("bom_id")


Set objFormCollector = CreateObject("Scripting.Dictionary")
'------------ CONDITIONS ----------------------
'----------------------------------------------
%>
<%
'--------------------------------------------------------------------------------------------------------------------------
Sub GetFormDetails ( parProd_id, parBom_id, ByRef outobjDetails )
        Dim rsQry, query
        
        If parProd_id <> "" Then
                
                Set rsQry = OraDatabase.DbCreateDynaset( "select * from packages pkg, package_versions pv where pv.pkg_id = pkg.pkg_id and pv.pv_id="&parProd_id, ORADYN_DEFAULT )
                
                If rsQry.RecordCount > 0 Then
                        outobjDetails.Item ("pkg_version")   = rsQry("pkg_version")
                        outobjDetails.Item ("pkg_name") = rsQry("pkg_name")
                        
                Else
                        Err.Raise 8, "Sub GetFormDetails", "Empty record set returned. nProd_id="& parProd_id
                        
                End If
                
                
                rsQry.Close
                Set rsQry = Nothing
                
        End If
        
        
        
End Sub
'--------------------------------------------------------------------------------------------------------------------------
'--------------------------------------------------------------------------------------------------------------------------
Sub TesterApproval ()
        On Error Resume Next
        
        Set rsQry = OraDatabase.DbCreateDynaset("SELECT * FROM PACKAGE_VERSIONS WHERE PV_ID="&Request("pv_id"), ORADYN_DEFAULT)
        
        OraDatabase.Parameters.Add "PV_ID",                     Request("pv_id"),                               ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "PKG_ID",                    rsQry("pkg_id"),                                ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "BOM_ID",                    parBom_id,                                              ORAPARM_INPUT, ORATYPE_NUMBER
        OraDatabase.Parameters.Add "TESTER_ID",                 objAccessControl.UserId,                ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "TESTER_COMMENTS",   Request("tester_comments"),     ORAPARM_INPUT, ORATYPE_VARCHAR2 
        
        If Request("approval") = "R" Then
                OraDatabase.Parameters.Add "COMMENT",                   "Version: "&rsQry("pkg_version")&" - Rejected By Tester" ,      ORAPARM_INPUT, ORATYPE_VARCHAR2 
                
                objEH.TryORA ( OraSession )
                OraDatabase.ExecuteSQL _
                "BEGIN pk_Production.Reject_Product ( :PV_ID, :TESTER_ID, :TESTER_COMMENTS ); END;"     
                objEH.CatchORA ( OraSession )           
                                
        Else
                OraDatabase.Parameters.Add "COMMENT",                   "Version: "&rsQry("pkg_version")&" - Approved By Tester" ,      ORAPARM_INPUT, ORATYPE_VARCHAR2 
        End If
        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Production.Release_Authorisation_Tester ( :PV_ID, :BOM_ID, :TESTER_ID, :TESTER_COMMENTS ); END;"      
        
        objEH.CatchORA ( OraSession )
        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Production.Log_Pkg_Trail ( :PKG_ID, :COMMENT, :TESTER_ID  ); END;"    
        
        objEH.CatchORA ( OraSession )   
        
        
        OraDatabase.Parameters.Remove "PV_ID"
        OraDatabase.Parameters.Remove "PKG_ID"
        OraDatabase.Parameters.Remove "BOM_ID"
        OraDatabase.Parameters.Remove "TESTER_ID"
        OraDatabase.Parameters.Remove "TESTER_COMMENTS"
        OraDatabase.Parameters.Remove "COMMENT"
        

        rsQry.Close()
        Set rsQry = nothing
                
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub ManagerApproval ()
        On Error Resume Next
        
        Set rsQry = OraDatabase.DbCreateDynaset("SELECT * FROM PACKAGE_VERSIONS WHERE PV_ID="&Request("pv_id"), ORADYN_DEFAULT)
        
        OraDatabase.Parameters.Add "PV_ID",                     Request("pv_id"),                               ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "PKG_ID",                    rsQry("pkg_id"),                                ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "BOM_ID",                    parBom_id,                                              ORAPARM_INPUT, ORATYPE_NUMBER
        OraDatabase.Parameters.Add "MANAGER_ID",                objAccessControl.UserId,                ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "MANAGER_COMMENTS",  Request("manager_comments"),    ORAPARM_INPUT, ORATYPE_VARCHAR2 
        OraDatabase.Parameters.Add "COMMENT",                   "Version: "&rsQry("pkg_version")&" - Approved By Manager" ,     ORAPARM_INPUT, ORATYPE_VARCHAR2 

        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Production.Release_Authorisation_Manager ( :PV_ID, :BOM_ID, :MANAGER_ID, :MANAGER_COMMENTS ); END;"   
        
        objEH.CatchORA ( OraSession )
        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Production.Log_Pkg_Trail ( :PKG_ID, :COMMENT, :MANAGER_ID  ); END;"   
        
        objEH.CatchORA ( OraSession )   
        
        
        OraDatabase.Parameters.Remove "PV_ID"
        OraDatabase.Parameters.Remove "PKG_ID"
        OraDatabase.Parameters.Remove "BOM_ID"
        OraDatabase.Parameters.Remove "MANAGER_ID"
        OraDatabase.Parameters.Remove "MANAGER_COMMENTS"
        
        rsQry.Close()
        Set rsQry = nothing
        
End Sub
'--------------------------------------------------------------------------------------------------------------------------
%>
<%
'------------ RUN BEFORE PAGE RENDER ----------
'objPMod.PersistInQryString ( Array("base_env_id") )

' --- Get Form details from DB ---
Call GetFormDetails ( parProd_id, parBom_id, objFormCollector )

' --- Load Validation Rules ---
'Call objForm.LoadValidationRules ( Array("product_comments"), OraDatabase )            ' Load Validation Rules

' --- Enter Form Validation Rule Changes here... ----
'----------------------------------------------------

If Request("btn") = "Submit" Then
        If objAccessControl.IsActive("ApprovedByTester") Then
                Call TesterApproval()
        ElseIf objAccessControl.IsActive("ApprovedByManager") Then
                Call ManagerApproval()
        End If          
        
        If objEH.Finally Then
                Call OpenInParentWindow ( "bom_home.asp?bom_id="&parBom_id )
                Call CloseWindow()
        End If                                                  
                
End If
'----------------------------------------------
%>
<html>
<head>
<title>Production Manager</title>
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="scripts/deployment_manager.css" rel="stylesheet" type="text/css">
<script language="JavaScript" src="scripts/common.js"></script>
</head>

<body background="images/bg_bage_0.gif" leftmargin="0" topmargin="0" onLoad="self.focus();">
<table width="100%"  border="0" cellspacing="0" cellpadding="10">
  <tr>
    <td bgcolor="#FFFFFF" class="body_txt"><span class="body_h1"><img src="icons/i_linkarrow_black.gif" width="11" height="11" align="absmiddle">&nbsp;Software Release Authorisation Form For <%=objFormCollector.Item("pkg_name")%>&nbsp;<%=objFormCollector.Item("pkg_version")%></span> <br> 
    </td>
  </tr>
  
  <%
  If objAccessControl.IsActive("ApprovedByTester") Then
  '-- FROM START ---------------------------------------------------------------------------------------------------------
  objFormComponent.FormName = "FormName"
  objFormComponent.Action = SCRIPT_NAME
  objFormComponent.OnSubmit = "ShowProgress();"
  Call objFormComponent.FormStart()
  %>   
  <tr>
    <td background="images/bg_login.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><%=ProgressBar%></td>
        <td align="right"><input name="btn" type="submit" class="form_btn" value="Submit">
          <input name="btn" type="reset" class="form_btn" value="Cancel" onClick="self.close();"></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td><table width="100%"  border="0" cellspacing="2" cellpadding="0">
          <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->  
     <tr>
        <td colspan="3" align="left" class="form_iname"><strong class="body_ttl3">Release Tested By <%=objAccessControl.FullName%> (Regional Tester) On <%= FormatDateTime(Date, 0) %> </strong></td>
     </tr> 
         <tr>
         <td align="left" class="form_iname">Decision</td>
                <td colspan="3" align="left" class="form_iname">                          
                <input name="approval" type="radio" value="A" checked>Accept
                <input name="approval" type="radio" value="R">Reject
                </td>    
         </tr>
         
          
          <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
      <tr>
        <td valign="top" nowrap class="form_iname">Comments</td>
        <td valign="top"><%=objFormComponent.TextArea ("tester_comments", NULL, 5, 80, "class='form_ivalue'" )%></td>
                <td valign="top">&nbsp;
                </td>
      </tr>
      <tr>
        <td width="10%" class="form_iname">&nbsp;</td>
        <td width="1%">&nbsp;</td>
                <td width="90%" class="body_ttl3"></td>
      </tr>
    </table></td>
  </tr>
  <%=objPMod.ComposeHiddenTags()%>
  
  <input type="hidden" name="pv_id" value="<%=parProd_id%>">
  <input type="hidden" name="action" value="true">
  <%
  Call objFormComponent.FormEnd()
  '-- FROM END ----------------------------------------------------------------------------------------------------------------
  Else
  
    '-- FROM START ---------------------------------------------------------------------------------------------------------
  objFormComponent.FormName = "FormName"
  objFormComponent.Action = SCRIPT_NAME
  objFormComponent.OnSubmit = "ShowProgress();"
  Call objFormComponent.FormStart()
  %>   
  <tr>
    <td background="images/bg_login.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><%=ProgressBar%></td>
        <td align="right"><input name="btn" type="submit" class="form_btn" value="Submit">
          <input name="btn" type="reset" class="form_btn" value="Cancel" onClick="self.close();"></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td><table width="100%"  border="0" cellspacing="2" cellpadding="0">
          <!-- Release Tested by A Regional Tester +++++++++++++++++++++++++++++++++++++++++++++++++++ -->      
          <%
          Dim rsTemp
          
          Set rsTemp = OraDatabase.DbCreateDynaset("SELECT * FROM RELEASE_AUTHORISATION, USERS WHERE PV_ID="&parProd_id&" AND BOM_ID="&parBom_id&" AND USERS.USER_ID = RELEASE_AUTHORISATION.TESTER_ID", ORADYN_DEFAULT)
          
          %>
          
          <tr>
        <td colspan="3" align="left" class="form_iname"><strong class="body_ttl3">Release Tested By <%=rsTemp("full_name")%> (Regional Tester) On <%= rsTemp("tester_datestamp") %> </strong></td>
      </tr>
          
          <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
      <tr>
        <td valign="top" nowrap class="form_iname">Comments</td>
        <td valign="top"><%=objFormComponent.TextArea ("tester_comments", rsTemp("tester_comments"), 5, 80, "class='form_ivalue' readonly" )%></td>
                <td valign="top">&nbsp;
                </td>
      </tr>
          <%
          rsTemp.Close()
          Set rsTemp = nothing
          %>
      <tr>
        <td width="10%" class="form_iname">&nbsp;</td>
        <td width="1%">&nbsp;</td>
                <td width="90%" class="body_ttl3"></td>
      </tr>
           <!-- Release Tested By Regional Manager+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->         
      <tr>
        <td colspan="3" align="left" class="form_iname"><strong class="body_ttl3">Release Authorised By <%=objAccessControl.FullName%> (Regional Manager) On <%= FormatDateTime(Date, 0) %> </strong></td>
      </tr>
          
         
      <tr>
        <td valign="top" nowrap class="form_iname">Comments</td>
        <td valign="top"><%=objFormComponent.TextArea ("manager_comments", NULL, 5, 80, "class='form_ivalue'" )%></td>
                <td valign="top">&nbsp;
                </td>
      </tr>
      <tr>
        <td width="10%" class="form_iname">&nbsp;</td>
        <td width="1%">&nbsp;</td>
                <td width="90%" class="body_ttl3"></td>
      </tr>
    </table></td>
  </tr>
  <%=objPMod.ComposeHiddenTags()%>
  
  <input type="hidden" name="pv_id" value="<%=parProd_id%>">
  <input type="hidden" name="action" value="true">
  <%
  Call objFormComponent.FormEnd()
  End If
  %>

</table>

</body>
</html>
<%
'------------ RUN AFTER PAGE RENDER -----------
Set objFormCollector = Nothing
'----------------------------------------------
%><!--#include file="common/globals_destructor.asp"-->