<% '=================================================================== ' Explorer Common '=================================================================== %> <% '------------ VARIABLE DEFINITION ------------- Dim objTemplateManager Dim objBomCollector Dim objBtnControl Dim objFormater Dim objFormComponent Dim objRepeater Dim aTabBtnsDef 'Dim dbPARproj_id, dbPARbranch_id '------------ CONSTANTS DECLARATION ----------- Const enumBOM_EDITMODE = "" Const enumBOM_NEW = "" Const enumBOM_ACCEPTED = "" Const enumBOM_REJECTED = "" '------------ VARIABLE INIT ------------------- Set objCrumbs = New Crumbs Set objPMod = New PersistanceModule Set objBomCollector = CreateObject("Scripting.Dictionary") Set objBtnControl = New ActionButtonControl Set objFormater = New Formater Set objFormComponent = New FormComponent Set objRepeater = New Repeater 'dbPARproj_id = enumDB_DEFAULT_EMPTY 'dbPARbranch_id = enumDB_DEFAULT_EMPTY '------------ CONDITIONS ---------------------- If Request("proj_id") <> "" Then dbPARproj_id = Request("proj_id") If Request("branch_id") <> "" Then dbPARbranch_id = Request("branch_id") '---------------------------------------------- %> <% '------------ RUN BEFORE PAGE RENDER ---------- Call InitialiseCrumbs ( objCrumbs ) objPMod.PersistInQryString ( aPersistList(enumPAR_PROJ_ID) ) objPMod.PersistInQryString ( aPersistList(enumPAR_BRANCH_ID) ) '---------------------------------------------- %> <% '----------------------------------------------------------------------------------------------------------------- Function GetStateImage ( nState_id ) Select Case CInt( nState_id ) Case enumDB_STATE_TYPE_BOM_CREATOR GetStateImage = "icons/s_integration.gif" Case enumDB_STATE_TYPE_BOM_LOCAL_TESTER GetStateImage = "icons/s_local_test.gif" Case Else GetStateImage = "icons/s_generic.gif" End Select End Function '----------------------------------------------------------------------------------------------------------------- Sub ActionRedirection ( sAction ) Select Case sAction Case "pmiNewBom" Call NewBom () Case "btnDestroyBom" Call DestroyBom () Case "pmiLockBom" Call LockUnlockBom("Y") Case "pmiUnlockBom" Call LockUnlockBom("N") Case "pmiReleaseTo" Call ReleaseTo () Case "pmiAcceptBom" Call AcceptBOM () Case "pmiRejectBom" Call RejectBOM () Case "pmiVersionTree" Call VersionTree() Case "pmiUnDeployView" Call ToUnDeployView() End Select End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Function PBSelector ( sName, nRowID, nParID, nLevel ) Const IMG_PROJECT = "" Const IMG_FOLDER_CLOSED = "" Const IMG_FOLDER_OPEN = "" Dim imgItem If nLevel = 0 Then ' Project Level imgItem = IMG_PROJECT If ( CInt(nRowID) = CINt(nParID) ) AND ( dbPARbranch_id = enumDB_DEFAULT_EMPTY ) Then PBSelector = imgItem &""& sName &"" Else PBSelector = imgItem & sName End If Else ' Branch Level imgItem = IMG_FOLDER_CLOSED If ( CInt(nRowID) = CINt(nParID) ) Then PBSelector = IMG_FOLDER_OPEN &""& sName &"" Else PBSelector = imgItem & sName End If End If End Function '---------------------------------------------------------------------------------------------------------------------------------------------- Sub LockUnlockBom ( cLock ) On Error Resume Next objEH.Try If Request("bom_id_list") = "" Then Err.Raise 8, "Please select one BOM.", "No further details available." ElseIf NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "Only one BOM can be destroyed at one time." Else Call OpenInWindow ( "_SetBomOfficial.asp?is_official="& cLock &"&bom_id_list="& Request("bom_id_list") &"&state_id="& Request("state_id") &"&rfile="& SCRIPT_NAME & objPMod.ComposeURLWithout("rfile,state_id") ) End If objEH.Catch End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Sub DestroyBom () On Error Resume Next objEH.Try If Request("bom_id_list") = "" Then Err.Raise 8, "Please select one BOM.", "No further details available." ElseIf NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "Only one BOM can be destroyed at one time." Else Call OpenInWindow ( "_DestroyBom.asp?bom_id_list="& Request("bom_id_list") &"&rfile="& SCRIPT_NAME &"&"& objPMod.ComposeURL() ) End If objEH.Catch End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Sub NewBom () On Error Resume Next objEH.Try If NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "No further details available." Else Call OpenInWindow ( "NewBom.asp?bom_id_list="& Request("bom_id_list") &"&rfile="& SCRIPT_NAME &"&"& objPMod.ComposeURL() ) End If objEH.Catch End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Sub VersionTree () On Error Resume Next objEH.Try If Request("bom_id_list") = "" Then Err.Raise 8, "Please select one BOM.", "No further details available." ElseIf NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "Only one BOM can be released at one time." Else Call OpenInWindow ( "BomVersionTree.asp?bom_id_list="& Request("bom_id_list") & objPMod.ComposeURLWithout("state_id") ) End If objEH.Catch End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Sub ReleaseTo () Dim objFormCollector Set objFormCollector = CreateObject("Scripting.Dictionary") On Error Resume Next objEH.Try If Request("bom_id_list") = "" Then Err.Raise 8, "Please select one BOM.", "No further details available." ElseIf NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "Only one BOM can be released at one time." Else Call GetBomDetails ( Request("bom_id_list"), objFormCollector ) If objFormCollector.Item("is_readonly") = enumDB_NO Then Err.Raise 8, "BOM must be locked first", "Please go back and Lock BOM." Else Call OpenInWindow ( "ReleaseTo.asp?bom_id_list="& Request("bom_id_list") &"&state_id="& Request("state_id") &"&rfile="& SCRIPT_NAME & objPMod.ComposeURLWithout("rfile,state_id") ) End If End If objEH.Catch End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Sub AcceptBOM () On Error Resume Next objEH.Try If Request("bom_id_list") = "" Then Err.Raise 8, "Please select one BOM", "No further details available." ElseIf NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "Only one BOM can be released at one time." Else Call OpenInWindow ( "Bom_AcceptReject.asp?is_rejected=N&bom_id_list="& Request("bom_id_list") &"&state_id="& Request("state_id") &"&rfile="& SCRIPT_NAME & objPMod.ComposeURLWithout("rfile,state_id") ) End If objEH.Catch End Sub '---------------------------------------------------------------------------------------------------------------------------------------------- Sub RejectBOM () On Error Resume Next objEH.Try If Request("bom_id_list") = "" Then Err.Raise 8, "Please select one BOM.", "No further details available." ElseIf NOT IsNumeric(Request("bom_id_list")) Then Err.Raise 8, "Please select one BOM only.", "Only one BOM can be released at one time." Else Call OpenInWindow ( "Bom_AcceptReject.asp?is_rejected=Y&bom_id_list="& Request("bom_id_list") &"&state_id="& Request("state_id") &"&rfile="& SCRIPT_NAME & objPMod.ComposeURLWithout("rfile,state_id") ) End If objEH.Catch End Sub '----------------------------------------------------------------------------------------------------------------- Sub ToUnDeployView () On Error Resume Next objEH.Try Call OpenInWindow ( "wUnDeployView.asp?proj_id="&dbPARproj_id&"&branch_id="&dbPARbranch_id ) objEH.Catch End Sub '----------------------------------------------------------------------------------------------------------------- %>