<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== '| | '| AddBlankBom | '| | '===================================================== %> <% Option explicit Response.Expires = 0 %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ VARIABLE DEFINITION ------------- Dim rsQry Dim parFrom_Bom_id '------------ CONSTANTS DECLARATION ----------- '------------ VARIABLE INIT ------------------- Call GetMainDBParameters ( dbPARproj_id, dbPARbranch_id, dbPARbom_id, dbPARnode_id, dbPARos_id, dbPARprod_id ) parProj_id = Request("proj_id") parFrom_Bom_id = Request("from_bom_id") '------------ CONDITIONS ---------------------- '------------ CONDITIONS ---------------------- '---------------------------------------------- %> <% '-------------------------------------------------------------------------------------------------------------------------- Function GetRMReleaseList ( nRtagId, nProjId ) Dim rsQry, query OraDatabase.Parameters.Add "RTAG_ID", nRtagId, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "PROJ_ID", nProjId, ORAPARM_INPUT, ORATYPE_NUMBER Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("RMReleasesCombo.sql"), ORADYN_DEFAULT ) If rsQry.RecordCount > 0 Then GetRMReleaseList = rsQry.GetRows() Else GetRMReleaseList = NULL End If OraDatabase.Parameters.Remove "RTAG_ID" OraDatabase.Parameters.Remove "PROJ_ID" rsQry.Close Set rsQry = Nothing End Function '-------------------------------------------------------------------------------------------------------------------------- Sub GetFormDetails ( nBom_id, ByRef outobjDetails ) Dim rsQry, query OraDatabase.Parameters.Add "BOM_ID", nBom_id, ORAPARM_INPUT, ORATYPE_NUMBER Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("BomLocationDetails.sql"), ORADYN_DEFAULT ) If rsQry.RecordCount > 0 Then outobjDetails.Item ("bom_id") = rsQry("bom_id") outobjDetails.Item ("bom_name") = rsQry("bom_name") outobjDetails.Item ("bom_version") = rsQry("bom_version") outobjDetails.Item ("bom_lifecycle") = rsQry("bom_lifecycle") outobjDetails.Item ("proj_name") = rsQry("proj_name") outobjDetails.Item ("branch_name") = rsQry("branch_name") Else Err.Raise 8, "Sub GetFormDetails in "& SCRIPT_NAME, "Empty record set returned. nBom_id="& nBom_id End If OraDatabase.Parameters.Remove "BOM_ID" rsQry.Close Set rsQry = Nothing End Sub '-------------------------------------------------------------------------------------------------------------------------- Sub AddBomRequirements () On Error Resume Next OraDatabase.Parameters.Add "FROM_BOM_ID", Request("from_bom_id"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "TO_BRANCH_ID", Request("branch_id"), ORAPARM_INPUT, ORATYPE_NUMBER objEH.TryORA ( OraSession ) OraDatabase.ExecuteSQL _ "BEGIN pk_Requirements.Add_Bom ( :FROM_BOM_ID, :TO_BRANCH_ID ); END;" objEH.CatchORA ( OraSession ) OraDatabase.Parameters.Remove "FROM_BOM_ID" OraDatabase.Parameters.Remove "BRANCH_ID" End Sub '-------------------------------------------------------------------------------------------------------------------------- Sub AddBomFrom () On Error Resume Next OraDatabase.Parameters.Add "FROM_BOM_ID", Request("from_bom_id"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "BRANCH_ID", Request("branch_id"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "BOM_VERSION", Request("bom_version"), ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "BOM_LIFECYCLE", Request("bom_lifecycle"), ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "BOM_COMMENTS", Request("bom_comments"), ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "RTAG_ID_FK", Request("rtag_id_fk"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER objEH.TryORA ( OraSession ) 'Response.write Request("from_bom_id") &"-"& Request("branch_id") OraDatabase.ExecuteSQL _ "BEGIN pk_Bom.Add_Bom (NULL, :BOM_VERSION, :BOM_LIFECYCLE, :BOM_COMMENTS, :BRANCH_ID, :FROM_BOM_ID, :RTAG_ID_FK, :USER_ID ); END;" objEH.CatchORA ( OraSession ) OraDatabase.Parameters.Remove "BOM_VERSION" OraDatabase.Parameters.Remove "BOM_LIFECYCLE" OraDatabase.Parameters.Remove "FROM_BOM_ID" OraDatabase.Parameters.Remove "BRANCH_ID" OraDatabase.Parameters.Remove "BOM_COMMENTS" OraDatabase.Parameters.Remove "RTAG_ID_FK" OraDatabase.Parameters.Remove "USER_ID" End Sub '-------------------------------------------------------------------------------------------------------------------------- %> <% '------------ RUN BEFORE PAGE RENDER ---------- ' --- Get Form details from DB --- Call GetFormDetails ( parFrom_Bom_id, objFormCollector ) Call GetBomDetails ( parFrom_Bom_id, objFormCollector ) ' --- Load Validation Rules --- Call objForm.LoadValidationRules ( Array("bom_comments"), OraDatabase ) ' Load Validation Rules Call objForm.LoadValidationRules ( Array("bom_version"), OraDatabase ) ' Load Validation Rules Call objForm.LoadValidationRules ( Array("bom_lifecycle"), OraDatabase ) ' Load Validation Rules ' --- Enter Form Validation Rule Changes here... ---- '---------------------------------------------------- ' --- RUN onPostBack --- If Request("action") <> "" Then If objForm.IsValidOnPostBack Then ' --- Form is Valid --- Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM BOMS WHERE BOM_VERSION='"& Request("bom_version") &"' AND BRANCH_ID = "& Request("branch_id") &" AND BOM_LIFECYCLE='"& Request("bom_lifecycle") &"'" , ORADYN_DEFAULT ) If rsQry.RecordCount = 0 Then Call AddBomFrom() If objEH.Finally Then Call OpenInWindow ( Request("rfile") &"?DONE=OK"& objPMod.ComposeURLWithout("rfile") ) End If Else Call Messenger ("Cannot create SBOM! The selected sbom version and lifecycle exists in this branch.", 1, "100%") rsQry.Close Set rsQry = nothing End If End If Else '-- Check if can create bom from this version '-- This is causing problems for VT so they are currently being excluded from this limitation. This will be looked into further in the future. If parProj_id <> 122 Then Call AddBomRequirements () End If End If '---------------------------------------------- %> Deployment Manager <% '-- FROM START --------------------------------------------------------------------------------------------------------- objFormComponent.FormName = "FormName" objFormComponent.Action = SCRIPT_NAME objFormComponent.OnSubmit = "ShowProgress();" Call objFormComponent.FormStart() %> <% Call objFormComponent.FormEnd() '-- FROM END ---------------------------------------------------------------------------------------------------------------- %>
<%=objPMod.ComposeHiddenTags()%>
 New BOM
Enter optional BOM comments and click Submit.
<%Call Messenger ( "New BOM will be created from
"& _ objFormCollector.Item("proj_name") &" / "& objFormCollector.Item("branch_name") &" / "& _ objFormCollector.Item("bom_name") &" "& objFormCollector.Item("bom_version") &"."& objFormCollector.Item("bom_lifecycle") , 3, "100%" )%>
BOM Name <%=objFormComponent.TextBox ( "bom_name", objFormCollector.Item("bom_name"), "class='form_ivalue' size='60' disabled" )%>
BOM Version <%=objFormComponent.TextBox ( "bom_version", Request("bom_version") , "class='form_ivalue' size='60' " )%> <%=objForm.Validate ("bom_version")%>
BOM Lifecycle <%=objFormComponent.TextBox ( "bom_lifecycle", Request("bom_lifecycle") , "class='form_ivalue' size='60' " )%> <%=objForm.Validate ("bom_lifecycle")%>
Release Manager Reference <%=objFormComponent.Combo ( "rtag_id_fk", GetRMReleaseList( objForm.GetValue( "rtag_id_fk", objFormCollector.Item("rtag_id_fk") ), dbPARproj_id ), TRUE, "class='form_ivalue'" )%>
Comments <%=objFormComponent.TextArea ( "bom_comments", Request("bom_comments"), 10, 60, "class='form_ivalue'" )%> <%=objForm.Validate ("bom_comments")%>
   
<%=objFormComponent.SubmitButton ( "Submit", "class='form_btn'" )%>  <%=objFormComponent.CancelButton ( "Cancel", "class='form_btn'", Request("rfile") &"?CANCEL=OK"& objPMod.ComposeURLWithout("rfile") )%>
<% '------------ RUN AFTER PAGE RENDER ----------- Set objPMod = Nothing '---------------------------------------------- %>