Subversion Repositories DevTools

Rev

Rev 29 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'|                                                   |
'|                                AddBlankBom                                    |
'|                                                   |
'=====================================================
%>
<%
Option explicit
Response.Expires = 0
%>
<!--#include file="common/globals.asp"-->
<!--#include file="common/config.asp"-->
<!--#include file="common/common_subs.asp"-->
<!--#include file="common/_form_window_common.asp"-->
<%
'------------ ACCESS CONTROL ------------------
%>
<!--#include file="_access_control_general.asp"-->
<%
'------------ 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


'----------------------------------------------
%>
<html>
<head>
<title>Deployment 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_lite_blue.gif" leftmargin="0" topmargin="0" onLoad="FormName.bom_version.focus();">
<!-- HEADER ++++++++++++++++ -->
<!--#include file="_header.asp"-->
<!-- +++++++++++++++++++++++ -->
<table width="100%"  border="0" cellspacing="0" cellpadding="0">
<%
'-- FROM START ---------------------------------------------------------------------------------------------------------
objFormComponent.FormName = "FormName"
objFormComponent.Action = SCRIPT_NAME
objFormComponent.OnSubmit = "ShowProgress();"
Call objFormComponent.FormStart()
%>
  <tr>
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="42"></td>
  </tr>
  <tr>
    <td align="center" valign="middle" bgcolor="#FFFFFF">
        <!-- FROM ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
    <table width="600" border="0" cellspacing="0" cellpadding="1">
        <tr>
          <td background="images/bg_bage_2.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td bgcolor="#FFFFFF"><table width="100%"  border="0" cellspacing="0" cellpadding="10">
                                <tr>
                                  <td bgcolor="#FFFFFF" class="body_txt"><span class="body_h1"><img src='icons/bi_new.gif' width='20' height='16' border='0' align='absmiddle'>&nbsp;New BOM </span> <br>
                                  Enter optional BOM comments and click Submit.
                                    </td>
                                </tr>
                <tr>
                                    <td background="images/bg_bage_0.gif">
                                        <%Call Messenger ( "New BOM will be created from <br>"& _
                                                                           objFormCollector.Item("proj_name") &"&nbsp;/&nbsp;"& objFormCollector.Item("branch_name") &"&nbsp;/&nbsp;"& _
                                                                           objFormCollector.Item("bom_name") &" "& objFormCollector.Item("bom_version") &"."& objFormCollector.Item("bom_lifecycle") , 3, "100%" )%>
                                        <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->    
                                        <!--#include file="messages/_msg_inline.asp"-->
                                        <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
                                        <table width="100%"  border="0" cellspacing="2" cellpadding="0">
                                          <tr>
                                        <td nowrap class="form_iname" valign="top">BOM Name </td>
                                        <td valign="top" nowrap><%=objFormComponent.TextBox ( "bom_name", objFormCollector.Item("bom_name"), "class='form_ivalue' size='60' disabled" )%></td>
                                        <td valign="top"></td>
                                      </tr>               
                                          <tr>
                                        <td nowrap class="form_iname" valign="top">BOM Version </td>
                                        <td valign="top" nowrap><%=objFormComponent.TextBox ( "bom_version", Request("bom_version") , "class='form_ivalue' size='60' " )%></td>
                                                <td valign="top"><%=objForm.Validate ("bom_version")%></td>
                                      </tr>                                       
                                          <tr>
                                        <td nowrap class="form_iname" valign="top">BOM Lifecycle </td>
                                        <td valign="top" nowrap><%=objFormComponent.TextBox ( "bom_lifecycle", Request("bom_lifecycle") , "class='form_ivalue' size='60' " )%></td>
                                                <td valign="top"><%=objForm.Validate ("bom_lifecycle")%></td>
                                      </tr>     
                                          
                                          <tr>
                                        <td nowrap class="form_iname" valign="top">Release Manager Reference</td>
                                        <td valign="top"><%=objFormComponent.Combo ( "rtag_id_fk", GetRMReleaseList( objForm.GetValue( "rtag_id_fk", objFormCollector.Item("rtag_id_fk") ), dbPARproj_id ), TRUE, "class='form_ivalue'" )%></td>
                                                <td valign="top"></td>
                                      </tr>                                                                       
                                      <tr>
                                        <td valign="top" nowrap class="form_iname">Comments</td>
                                        <td valign="top"><%=objFormComponent.TextArea ( "bom_comments", Request("bom_comments"), 10, 60, "class='form_ivalue'" )%></td>
                                                <td valign="top"><%=objForm.Validate ("bom_comments")%></td>
                                      </tr>
                                      <tr>
                                        <td width="10%" class="form_iname">&nbsp;</td>
                                        <td width="1%">&nbsp;</td>
                                                <td width="90%" class="val_err"></td>
                                      </tr>
                                    </table></td>
                                </tr>
                                <tr>
                  <td background="images/bg_login.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
                      <tr>
                        <td></td>
                        <td align="right">
                                                <%=objFormComponent.SubmitButton ( "Submit", "class='form_btn'" )%>&nbsp;
                                                <%=objFormComponent.CancelButton ( "Cancel", "class='form_btn'", Request("rfile") &"?CANCEL=OK"& objPMod.ComposeURLWithout("rfile") )%></td>
                      </tr>
                  </table></td>
                </tr>
                <%=objPMod.ComposeHiddenTags()%>
                                <input type="hidden" name="from_bom_id" value="<%=parFrom_Bom_id%>">
                                <input type="hidden" name="action" value="true">
              </table>
                         </td>
            </tr>
          </table></td>
        </tr>
      </table>
          <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->   </td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="42"></td>
  </tr>
<%
Call objFormComponent.FormEnd()
'-- FROM END ----------------------------------------------------------------------------------------------------------------
%> 
</table>
<!-- FOOTER ++++++++++++++++++++++ -->
<!--#include file="_footer.asp"-->
<!-- +++++++++++++++++++++++++++++ -->
</body>
</html>
<%
'------------ RUN AFTER PAGE RENDER -----------
Set objPMod = Nothing
'----------------------------------------------
%>
<!--#include file="common/globals_destructor.asp"-->