<%@LANGUAGE="VBSCRIPT"%> <% Option explicit Response.Expires = 0 ' always load the page, dont store %> <% '===================================================== ' Code Review '===================================================== %> <% ' Set rfile parameter. This is a return page after Login Call objPMod.StoreParameter ( "rfile", "fixed_issues.asp" ) '------------ ACCESS CONTROL ------------------ %> <% '------------ Variable Definition ------------- Dim parPv_id Dim rsQry Dim pkgName Dim pkgVersion Dim isDLocked Dim pageIsEditable '------------ Constants Declaration ----------- '------------ Variable Init ------------------- parPv_id = Request("pv_id") parRtag_id = Request("rtag_id") '---------------------------------------------- %> <% '----------------------------------------------------------------------------------------------------------------------------------- Sub GetCodeReview ( nPv_id, oRS ) Dim Query_String Query_String = _ " SELECT * FROM CODE_REVIEWS WHERE pv_id = :PV_ID" Query_String = Replace( Query_String, ":PV_ID", nPv_id ) Set oRS = OraDatabase.CreateDynaset( Query_String, cint(0)) End Sub '----------------------------------------------------------------------------------------------------------------------------------- Function DecodeItemResult ( cCheck ) Select Case cCheck Case enumCODE_REVIEW_PASS DecodeItemResult = "" Case enumCODE_REVIEW_FAIL DecodeItemResult = "" Case Else DecodeItemResult = "" End Select End Function '----------------------------------------------------------------------------------------------------------------------------------- Function DecodeOverallResult ( ByVal cCheck ) If cCheck = "" OR IsNull(cCheck) Then cCheck = 0 Select Case CInt( cCheck ) Case enumCODE_REVIEW_ACCEPTED DecodeOverallResult = "" Case enumCODE_REVIEW_MINOR_UPDATES DecodeOverallResult = "" Case enumCODE_REVIEW_MAJOR_REWORK DecodeOverallResult = "" Case Else DecodeOverallResult = "" End Select End Function '----------------------------------------------------------------------------------------------------------------------------------- Function ConstructSQL ( nPv_id, sQuery ) Dim SQLqry, arrLineSplit, arrParamSplit, line Const localPARAM_SPLIT = ":" SQLqry = ReadFile( sQuery ) arrLineSplit = Split ( SQLqry, VBNewLine ) For Each line in arrLineSplit arrParamSplit = Split ( line, localPARAM_SPLIT ) ' Split the line with ":" e.g. some_column = ':param_name:', If Ubound( arrParamSplit ) > 0 Then SQLqry = Replace( SQLqry, localPARAM_SPLIT & arrParamSplit( 1 ) & localPARAM_SPLIT, Replace( Request( arrParamSplit( 1 ) ), "'", "''") ) End If Next ConstructSQL = SQLqry End Function '----------------------------------------------------------------------------------------------------------------------------------- Sub UpdateCodeReview ( nPv_id ) Dim SQLstr SQLstr = ConstructSQL ( nPv_id, rootPath & "queries\update_code_review.sql" ) objEH.TryORA ( OraSession ) On Error Resume Next OraDatabase.ExecuteSQL SQLstr objEH.CatchORA ( OraSession ) End Sub '----------------------------------------------------------------------------------------------------------------------------------- %> <% '------------ Action Requirements ------------------- 'Process submition If CBool(Request("action")) AND objAccessControl.UserLogedIn Then Call UpdateCodeReview ( parPv_id ) Call OpenInParentWindow ("fixed_issues.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id ) 'Call CloseWindow End If Call Get_Pkg_Short_Info( parPv_id, NULL, pkgName, pkgVersion, NULL, NULL, isDLocked ) Call GetCodeReview ( parPv_id, rsQry ) pageIsEditable = Is_Page_Editable ( isDLocked ) %> Release Manager
 Code Review for <%=pkgName%> <%=pkgVersion%> class="form_btn"<%Else%>disabled class="form_btn_disabled"<%End If%>>
 

Summary
Date of Review <%=EuroDate ( rsQry("date_of_review") )%>       Time Spent <%=rsQry("time_spent")%> hrs
Reason for Review <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("review_reason") )))%>
Review Team Domain Expert <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rteam_domain_expert") )))%>
Language Expert <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rteam_language_expert") )))%>
Peer Developer <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rteam_peer_developer") )))%>
Author <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rteam_author") )))%>
Files Reviewed <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("files_reviewed") )))%>
Review Results
Issues Raised <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("issues_raised") )))%>
Comments <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("review_comments") )))%>


Functionality
Item Check Comment
Meets required functionality <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("fnc_c_meets_functionality") )))%>


Robustness
Item Check Comment
Boundary conditions handled <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_bound_cond_handled") )))%>
Class interface preconditions tested <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_class_interf_precond") )))%>
No unititalised data <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_no_unitialised_date") )))%>
Exception handling <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_excep_handing") )))%>
Resource mgt (db cxn, memory) <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_resource_mng") )))%>
Transaction completeness <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_trans_complet") )))%>
Threadsafety <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_threadsafety") )))%>
Return values (where appropriate) <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_ret_vals") )))%>
Correct err handling at Subsys bdys <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_corr_err_handling") )))%>
SQL correct and conforming to standards <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("rbs_c_sql_std") )))%>


Maintainability
Item Check Comment
External references explicit (eg: pkg imports) <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_ext_ref") )))%>
Class size ok <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_class_size") )))%>
Method size ok <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_method_size") )))%>
Appropriate commenting <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_approp_comm") )))%>
Indentifiers conform to naming standards <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_ident_name_std") )))%>
Switch statements have defaults <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_switch_have_defaults") )))%>
No literal numeric constants except –1, 0, 1 <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_no_lit_num") )))%>
No dead or unused code <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("mnt_c_no_dead_code") )))%>


Design Issues
Item Check Comment
Use of standard design patterns <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("dei_c_std_des_patt") )))%>
Use of appropriate algorithms (consider performance) <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("dei_c_approp_algor") )))%>
Use of appropriate objects (consider bloat, object focus, encapsulation) <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("dei_c_approp_obj") )))%>
Appropriate user error messages <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("dei_c_approp_err_msg") )))%>
Use of standard framework components <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("dei_c_std_framew_comp") )))%>
Appropriate logging <%=NewLine_To_BR( To_HTML( SQLstring (rsQry("dei_c_approp_logging") )))%>


class="form_btn"<%Else%>disabled class="form_btn_disabled"<%End If%>>