%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'| |
'| wEditOs |
'| |
'=====================================================
%>
<%
Option explicit
Response.Expires = 0
%>
<%
'------------ ACCESS CONTROL ------------------
%>
<%
'------------ VARIABLE DEFINITION -------------
Dim parBos_id
Dim parOs_id_list
Dim rsQry
Dim objFormCollector
Dim objBomCollector
'------------ CONSTANTS DECLARATION -----------
'------------ VARIABLE INIT -------------------
Call GetMainDBParameters ( dbPARproj_id, dbPARbranch_id, dbPARbom_id, dbPARnode_id, dbPARos_id, dbPARprod_id )
parNode_id = dbPARnode_id
parBos_id = Request("bos_id")
parOs_id_list = Request("os_id_list")
Set objFormCollector = CreateObject("Scripting.Dictionary")
Set objBomCollector = CreateObject("Scripting.Dictionary")
'------------ CONDITIONS ----------------------
'----------------------------------------------
%>
<%
'--------------------------------------------------------------------------------------------------------------------------
Sub GetFormDetails ( ByRef outobjDetails )
Dim rsQry, query
If parOs_id_list <> "" Then
OraDatabase.Parameters.Add "OS_ID", parOs_id_list, ORAPARM_INPUT, ORATYPE_NUMBER
Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("OsDetails.sql"), ORADYN_DEFAULT )
If rsQry.RecordCount > 0 Then
outobjDetails.Item ("os_id") = rsQry("os_id")
outobjDetails.Item ("os_name") = rsQry("os_name")
outobjDetails.Item ("os_comments") = rsQry("os_comments")
outobjDetails.Item ("node_spec_file") = rsQry("node_spec_file")
outobjDetails.Item ("base_env_id") = rsQry("base_env_id")
outobjDetails.Item ("base_env_name") = rsQry("base_env_name")
outobjDetails.Item ("not_xml") = rsQry("not_xml")
Else
Err.Raise 8, "Sub GetFormDetails", "Empty record set returned. nOs_id="& nOs_id
End If
OraDatabase.Parameters.Remove "OS_ID"
rsQry.Close
Set rsQry = Nothing
End If
If Request("bos_id") <> "" Then
OraDatabase.Parameters.Add "BOS_ID", Request("bos_id"), ORAPARM_INPUT, ORATYPE_NUMBER
query = _
" SELECT bt.BOS_TYPE"&_
" FROM BOS_TYPES bt"&_
" WHERE bt.BOS_ID = :BOS_ID"
Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
outobjDetails.Item ("base_env_name") = rsQry("bos_type") &" Base Configuration"
End If
OraDatabase.Parameters.Remove "BOS_ID"
rsQry.Close
Set rsQry = Nothing
End If
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Function GetBaseEnv ( nBaseEnvName, nBom_id )
Dim rsQry, query
OraDatabase.Parameters.Add "BOM_ID", nBom_id, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "BASE_ENV_NAME", nBaseEnvName, ORAPARM_INPUT, ORATYPE_VARCHAR2
Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("BomBaseEnvCombo.sql"), ORADYN_DEFAULT )
If rsQry.RecordCount > 0 Then
GetBaseEnv = rsQry.GetRows()
Else
GetBaseEnv = NULL
End If
OraDatabase.Parameters.Remove "BOM_ID"
OraDatabase.Parameters.Remove "BASE_ENV_NAME"
rsQry.Close
Set rsQry = Nothing
End Function
'--------------------------------------------------------------------------------------------------------------------------
Sub AddOs ()
On Error Resume Next
OraDatabase.Parameters.Add "OS_NAME", Request("os_name"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "BASE_ENV_NAME", Request("base_env_name"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "OS_COMMENTS", Request("os_comments"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "NODE_SPEC_FILE", Request("node_spec_file"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "NOT_XML", Request("not_xml"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "NODE_ID", Request("node_id"), ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "BOS_ID", Request("bos_id"), ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
objEH.TryORA ( OraSession )
OraDatabase.ExecuteSQL _
"BEGIN pk_Operating_System.Add_Os ( :OS_NAME, :OS_COMMENTS, :NODE_SPEC_FILE, :NOT_XML, :NODE_ID, :BASE_ENV_NAME, :BOS_ID, :USER_ID ); END;"
objEH.CatchORA ( OraSession )
OraDatabase.Parameters.Remove "OS_NAME"
OraDatabase.Parameters.Remove "BASE_ENV_NAME"
OraDatabase.Parameters.Remove "OS_COMMENTS"
OraDatabase.Parameters.Remove "NODE_SPEC_FILE"
OraDatabase.Parameters.Remove "NOT_XML"
OraDatabase.Parameters.Remove "NODE_ID"
OraDatabase.Parameters.Remove "BOS_ID"
OraDatabase.Parameters.Remove "USER_ID"
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub UpdateOs ()
On Error Resume Next
OraDatabase.Parameters.Add "OS_ID", Request("os_id_list"), ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "OS_NAME", Request("os_name"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "BASE_ENV_NAME", Request("base_env_name"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "OS_COMMENTS", Request("os_comments"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "NODE_SPEC_FILE", Request("node_spec_file"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "NOT_XML", Request("not_xml"), ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
objEH.TryORA ( OraSession )
OraDatabase.ExecuteSQL _
"BEGIN pk_Operating_System.Update_Os ( :OS_ID, :OS_NAME, :OS_COMMENTS, :BASE_ENV_NAME, :NODE_SPEC_FILE, :NOT_XML, :USER_ID ); END;"
objEH.CatchORA ( OraSession )
OraDatabase.Parameters.Remove "OS_ID"
OraDatabase.Parameters.Remove "OS_NAME"
OraDatabase.Parameters.Remove "BASE_ENV_NAME"
OraDatabase.Parameters.Remove "OS_COMMENTS"
OraDatabase.Parameters.Remove "NODE_SPEC_FILE"
OraDatabase.Parameters.Remove "NOT_XML"
OraDatabase.Parameters.Remove "USER_ID"
End Sub
'--------------------------------------------------------------------------------------------------------------------------
%>
<%
'------------ RUN BEFORE PAGE RENDER ----------
Call GetBomDetails ( Request("bom_id"), objBomCollector )
' --- Get Form details from DB ---
Call GetFormDetails ( objFormCollector )
' --- Load Validation Rules ---
Call objForm.LoadValidationRules ( Array("os_name","os_comments","base_env_name"), OraDatabase ) ' Load Validation Rules
' --- Enter Form Validation Rule Changes here... ----
Call objForm.UpdateRules ( "id='base_env_name' IsRequired='N'" ) ' base_env_name is not required in this instance
'----------------------------------------------------
' --- RUN onPostBack ---
If Request("action") <> "" Then
If objForm.IsValidOnPostBack Then
' --- Form is Valid ---
If parOs_id_list <> "" Then
Call UpdateOs()
Else
Call AddOs()
End If
If objEH.Finally Then
Call OpenInParentWindow ( Request("rfile") &"?DONE=OK"& objPMod.ComposeURLWithout("rfile") )
Call CloseWindow()
End If
End If
End If
'----------------------------------------------
%>
Deployment Manager
Operating System
Enter OS name and optional comments.
<%
'-- FROM START ---------------------------------------------------------------------------------------------------------
objFormComponent.FormName = "FormName"
objFormComponent.Action = SCRIPT_NAME
objFormComponent.OnSubmit = "ShowProgress();"
Call objFormComponent.FormStart()
%>
OS Name
<%=objFormComponent.TextBox ( "os_name", objForm.GetValue( "os_name", objFormCollector.Item("os_name") ), "size='60' class='form_ivalue'" )%>
<%=objForm.Validate ("os_name")%>
Node Spec FileName
<%=objFormComponent.TextBox ( "node_spec_file", objForm.GetValue( "node_spec_file", objFormCollector.Item("node_spec_file") ), "size='60' class='form_ivalue'" )%>
Checked If Not Required In XML
<%If IsNull(objFormCollector.Item("not_xml")) Then%>
<%Else%>
<%End If%>
Base Configuration
<%Response.write _
objFormComponent.ComboWithText ( _
"base_env_name", _
objForm.GetValue( "base_env_name", objFormCollector.Item("base_env_name") ), _
GetBaseEnv( objForm.GetValue( "base_env_name", objFormCollector.Item("base_env_name") ), _
Request("bom_id") ), "size='50' class='form_ivalue'" _
)%>
<%=objForm.Validate ("base_env_name")%>
Comments
<%=objFormComponent.TextArea ( "os_comments", objForm.GetValue( "os_comments", objFormCollector.Item("os_comments") ), 10, 60, "class='form_ivalue'" )%>
<%=objForm.Validate ("os_comments")%>
<%=objPMod.ComposeHiddenTagsWithout("node_id")%>
<%
Call objFormComponent.FormEnd()
'-- FROM END ----------------------------------------------------------------------------------------------------------------
%>