<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== '| | '| wFormApproval | '| | '===================================================== %> <% Option explicit Response.Expires = 0 %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ 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 '---------------------------------------------- %> Production Manager <% If objAccessControl.IsActive("ApprovedByTester") Then '-- FROM START --------------------------------------------------------------------------------------------------------- objFormComponent.FormName = "FormName" objFormComponent.Action = SCRIPT_NAME objFormComponent.OnSubmit = "ShowProgress();" Call objFormComponent.FormStart() %> <%=objPMod.ComposeHiddenTags()%> <% Call objFormComponent.FormEnd() '-- FROM END ---------------------------------------------------------------------------------------------------------------- Else '-- FROM START --------------------------------------------------------------------------------------------------------- objFormComponent.FormName = "FormName" objFormComponent.Action = SCRIPT_NAME objFormComponent.OnSubmit = "ShowProgress();" Call objFormComponent.FormStart() %> <%=objPMod.ComposeHiddenTags()%> <% Call objFormComponent.FormEnd() End If %>
 Software Release Authorisation Form For <%=objFormCollector.Item("pkg_name")%> <%=objFormCollector.Item("pkg_version")%>
<%=ProgressBar%>
Release Tested By <%=objAccessControl.FullName%> (Regional Tester) On <%= FormatDateTime(Date, 0) %>
Decision Accept Reject
Comments <%=objFormComponent.TextArea ("tester_comments", NULL, 5, 80, "class='form_ivalue'" )%>  
   
<%=ProgressBar%>
<% 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) %> <% rsTemp.Close() Set rsTemp = nothing %>
Release Tested By <%=rsTemp("full_name")%> (Regional Tester) On <%= rsTemp("tester_datestamp") %>
Comments <%=objFormComponent.TextArea ("tester_comments", rsTemp("tester_comments"), 5, 80, "class='form_ivalue' readonly" )%>  
   
Release Authorised By <%=objAccessControl.FullName%> (Regional Manager) On <%= FormatDateTime(Date, 0) %>
Comments <%=objFormComponent.TextArea ("manager_comments", NULL, 5, 80, "class='form_ivalue'" )%>