Subversion Repositories DevTools

Rev

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

<%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'|                                                   |
'|                                wEditProd                                              |
'|                                                   |
'=====================================================
%>
<%
Option explicit
Response.Expires = 0
%>
<!--#include file="common/globals.asp"-->
<!--#include file="common/config.asp"-->
<!--#include file="common/common_subs.asp"-->
<!--#include file="common/_popup_window_common.asp"-->
<%
'------------ ACCESS CONTROL ------------------
%>
<!--#include file="_access_control_general.asp"-->
<%
'------------ VARIABLE DEFINITION -------------
Dim objFormCollector
Dim aRs
Dim MoreLink
Dim parFilter_on
Dim ForceDropdown
Dim parBase_env_id
Dim rsTemp
'------------ CONSTANTS DECLARATION -----------
'------------ VARIABLE INIT -------------------
parProd_id = Request("prod_id_list")
parOs_id = Request("os_id")
parBom_id = Request("bom_id")
parFilter_on = Request("filter_on")
parBase_env_id = Request("base_env_id")
Set objFormCollector = CreateObject("Scripting.Dictionary")
'------------ CONDITIONS ----------------------
'----------------------------------------------
%>
<%
'--------------------------------------------------------------------------------------------------------------------------
Sub GetFormDetails ( nProd_id, nOs_id, nBaseEnvId, nBom_id, ByRef outobjDetails )
        Dim rsQry, query
        OraDatabase.Parameters.Add "PROD_ID", nProd_id, ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "BOM_ID", nBom_id,   ORAPARM_INPUT, ORATYPE_NUMBER 
        
        If nBaseEnvId = "" Then
                OraDatabase.Parameters.Add "OS_ID", nOs_id,     ORAPARM_INPUT, ORATYPE_NUMBER 
                query = GetQuery("ProductDetailsAtOs.sql")
        Else
                OraDatabase.Parameters.Add "BASE_ENV_ID", nBaseEnvId,   ORAPARM_INPUT, ORATYPE_NUMBER 
                query = GetQuery("ProductDetailsAtBaseEnv.sql")
        End If
        
        
        Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
        
        If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
                outobjDetails.Item ("seq_num")   = rsQry("seq_num")
                outobjDetails.Item ("prod_id") = rsQry("prod_id")
                outobjDetails.Item ("pkg_id") = rsQry("pkg_id")
                outobjDetails.Item ("pkg_name") = rsQry("pkg_name")
                outobjDetails.Item ("is_node_spec") = rsQry("is_node_spec")
                outobjDetails.Item ("sunos_electronic_name") = rsQry("sunos_electronic_name")
                outobjDetails.Item ("win_electronic_name") = rsQry("win_electronic_name")
                outobjDetails.Item ("pkg_version") = rsQry("pkg_version")
                outobjDetails.Item ("product_comments") = rsQry("product_comments")
                outobjDetails.Item ("not_xml") = rsQry("not_xml")               
                outobjDetails.Item ("is_patch") = rsQry("is_patch")             
                outobjDetails.Item ("patch_electronic_name") = rsQry("patch_electronic_name")           
                
                If nBaseEnvId = "" Then
                        outobjDetails.Item ("os_id") = rsQry("os_id")
                Else
                        outobjDetails.Item ("base_env_id") = rsQry("base_env_id")
                End If
                
        Else
                Err.Raise 8, "Sub GetFormDetails", "Empty record set returned. nProd_id="& nProd_id &", nOs_id="& nOs_id
                
        End If
        
        rsQry.Close
        Set rsQry = Nothing
        
        
        
        '/* Get Project Details */
        query = _
        " SELECT proj.RM_PROJECTS_FK"&_
        "  FROM BOMS bo,"&_
        "          BRANCHES br,"&_
        "          DM_PROJECTS proj"&_
        " WHERE br.PROJ_ID = proj.PROJ_ID"&_
        "   AND bo.BRANCH_ID = br.BRANCH_ID"&_
        "   AND bo.BOM_ID = :BOM_ID"
        
        Set rsQry = OraDatabase.DbCreateDynaset( query , ORADYN_DEFAULT )
        
        If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
                outobjDetails.Item ("rm_projects_fk")   = rsQry("rm_projects_fk")
                
        Else
                Err.Raise 8, "Sub GetFormDetails", "Empty record set returned. nBom_id="& nBom_id 
                
        End If
        
        OraDatabase.Parameters.Remove "PROD_ID"
        OraDatabase.Parameters.Remove "OS_ID"
        OraDatabase.Parameters.Remove "BASE_ENV_ID"
        OraDatabase.Parameters.Remove "BOM_ID"
        
        rsQry.Close
        Set rsQry = Nothing
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub GetProductVersions ( aRs, outMore )
        Dim rsQry, OraParameter, CurrentRecordCount, TotalRecordCount
        
        OraDatabase.Parameters.Add "PKG_ID",    objFormCollector.Item("pkg_id"), ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "PROJ_ID",   objFormCollector.Item("rm_projects_fk"),        ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "FILTER_ON",   1,    ORAPARM_INPUT, ORATYPE_NUMBER 
        
        '-- Get all Ora Parameters
        Set OraParameter = OraDatabase.Parameters
        
        
        '-- Clear Filter if user require
        If parFilter_on <> "" Then OraParameter("FILTER_ON").Value = 0
        
        
        '-- Get Record Set
        Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ProductVersionsList.sql"), ORADYN_DEFAULT )
        CurrentRecordCount = rsQry.RecordCount
        If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then
                aRs = rsQry.GetRows()
                
        Else
                aRs = NULL
                
        End If
        
        rsQry.Close
        Set rsQry = Nothing
        
        
        '-- Get Total Record Count
        OraParameter("FILTER_ON").Value = 0
        Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ProductVersionsList.sql"), ORADYN_DEFAULT )
        TotalRecordCount = rsQry.RecordCount
        
        rsQry.Close
        Set rsQry = Nothing
        
        
        '-- Create More... linke if needed
        outMore = NULL
        If CurrentRecordCount < TotalRecordCount Then
                outMore = "javascript:go_submit( document.FormName, ""filter_off"" );ShowProgress();"
        End If
        
        
        Set OraParameter = Nothing
        
        OraDatabase.Parameters.Remove "PKG_ID"
        OraDatabase.Parameters.Remove "PROJ_ID"
        OraDatabase.Parameters.Remove "FILTER_ON"
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Function GetSeqNumList ( nSeq_num )
        Dim rsQry, query
        
        OraDatabase.Parameters.Add "SEQ_NUM",   nSeq_num,       ORAPARM_INPUT, ORATYPE_NUMBER 
        
        
        If parBase_env_id = "" Then
                OraDatabase.Parameters.Add "OS_ID",  parOs_id,          ORAPARM_INPUT, ORATYPE_NUMBER 
                query = GetQuery ("InstallOrderComboAtOs.sql")
        Else
                OraDatabase.Parameters.Add "BASE_ENV_ID",  parBase_env_id,              ORAPARM_INPUT, ORATYPE_NUMBER 
                query = GetQuery ("InstallOrderComboAtBaseEnv.sql")
        End If
        
        
        Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
        If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then
                GetSeqNumList = rsQry.GetRows()
                
        Else
                GetSeqNumList = NULL
                
        End If
        
        rsQry.Close
        Set rsQry = Nothing
        
        OraDatabase.Parameters.Remove "OS_ID"
        OraDatabase.Parameters.Remove "BASE_ENV_ID"
        OraDatabase.Parameters.Remove "SEQ_NUM"
End Function
'--------------------------------------------------------------------------------------------------------------------------
Sub UpdateProdAtOs ()
        On Error Resume Next
        
        OraDatabase.Parameters.Add "OLD_PROD_ID",       Request("prod_id_list"),        ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "NEW_PROD_VERSION",  Request("new_prod_version"),    ORAPARM_INPUT, ORATYPE_VARCHAR2
        OraDatabase.Parameters.Add "OS_ID",             Request("os_id"),                       ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "SEQ_NUM",           Request("seq_num"),             ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "PROD_COMMENTS", Request("product_comments"),ORAPARM_INPUT, ORATYPE_VARCHAR2
        OraDatabase.Parameters.Add "SUNOS_ELECTRONIC_NAME", Request("sunos_electronic_name"),ORAPARM_INPUT, ORATYPE_VARCHAR2    
        OraDatabase.Parameters.Add "WIN_ELECTRONIC_NAME", Request("win_electronic_name"),ORAPARM_INPUT, ORATYPE_VARCHAR2        
        OraDatabase.Parameters.Add "IS_NODE_SPEC", Request("is_node_spec"),ORAPARM_INPUT, ORATYPE_VARCHAR2              
        OraDatabase.Parameters.Add "NOT_XML",   Request("not_xml"),     ORAPARM_INPUT, ORATYPE_VARCHAR2 
        OraDatabase.Parameters.Add "PATCH_ELECTRONIC_NAME", Request("patch_electronic_name"),ORAPARM_INPUT, ORATYPE_VARCHAR2            
        OraDatabase.Parameters.Add "USER_ID",           objAccessControl.UserId,                        ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "COMMENT", "Updated Package "&objFormCollector.Item("pkg_name")&" to Version:"&Request("new_prod_version"),ORAPARM_INPUT, ORATYPE_VARCHAR2                           
        OraDatabase.Parameters.Add "PKG_NAME",          "",                     ORAPARM_OUTPUT, ORATYPE_VARCHAR2
        OraDatabase.Parameters.Add "BOM_ID", parBom_id,         ORAPARM_INPUT, ORATYPE_NUMBER 

        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Product.Update_Product ( :OLD_PROD_ID, :NEW_PROD_VERSION, :OS_ID, :SEQ_NUM, :PROD_COMMENTS, :SUNOS_ELECTRONIC_NAME, :WIN_ELECTRONIC_NAME, :IS_NODE_SPEC, :NOT_XML, :PATCH_ELECTRONIC_NAME, :USER_ID, :PKG_NAME ); END;"       
        
        objEH.CatchORA ( OraSession )
        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Bom.Log_Os_Trail ( :OS_ID, :COMMENT, :USER_ID  ); END;"       
        
        objEH.CatchORA ( OraSession )


        Call PopulateSBOMField( parBom_id, NULL, objFormCollector.Item("pkg_name"), Request("new_prod_version") )               
        
        
        OraDatabase.Parameters.Remove "OLD_PROD_ID"
        OraDatabase.Parameters.Remove "NEW_PROD_VERSION"
        OraDatabase.Parameters.Remove "OS_ID"
        OraDatabase.Parameters.Remove "SEQ_NUM"
        OraDatabase.Parameters.Remove "PROD_COMMENTS"
        OraDatabase.Parameters.Remove "SUNOS_ELECTRONIC_NAME"   
        OraDatabase.Parameters.Remove "WIN_ELECTRONIC_NAME"
        OraDatabase.Parameters.Remove "IS_NODE_SPEC"    
        OraDatabase.Parameters.Remove "NOT_XML" 
        OraDatabase.Parameters.Remove "PATCH_ELECTRONIC_NAME"   
        OraDatabase.Parameters.Remove "USER_ID"         
        OraDatabase.Parameters.Remove "COMMENT"         
        OraDatabase.Parameters.Remove "PKG_NAME"        
        OraDatabase.Parameters.Remove "BOM_ID"  
                
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub UpdateProdAtBaseEnv ()
        On Error Resume Next
        
        OraDatabase.Parameters.Add "OLD_PROD_ID",       Request("prod_id_list"),        ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "NEW_PROD_VERSION",  Request("new_prod_version"),    ORAPARM_INPUT, ORATYPE_VARCHAR2
        OraDatabase.Parameters.Add "BASE_ENV_ID",               Request("base_env_id"),                         ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "SEQ_NUM",           Request("seq_num"),             ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "PROD_COMMENTS", Request("product_comments"),ORAPARM_INPUT, ORATYPE_VARCHAR2
        OraDatabase.Parameters.Add "SUNOS_ELECTRONIC_NAME", Request("sunos_electronic_name"),ORAPARM_INPUT, ORATYPE_VARCHAR2    
        OraDatabase.Parameters.Add "WIN_ELECTRONIC_NAME", Request("win_electronic_name"),ORAPARM_INPUT, ORATYPE_VARCHAR2        
        OraDatabase.Parameters.Add "NOT_XML",   Request("not_xml"),     ORAPARM_INPUT, ORATYPE_VARCHAR2         
        OraDatabase.Parameters.Add "PATCH_ELECTRONIC_NAME", Request("patch_electronic_name"),ORAPARM_INPUT, ORATYPE_VARCHAR2    
        OraDatabase.Parameters.Add "USER_ID",           objAccessControl.UserId,                        ORAPARM_INPUT, ORATYPE_NUMBER 
        OraDatabase.Parameters.Add "COMMENT", "Updated Package "&objFormCollector.Item("pkg_name")&" to Version:"&Request("new_prod_version"),ORAPARM_INPUT, ORATYPE_VARCHAR2                                   
        OraDatabase.Parameters.Add "OS_ID",             Request("os_id"),                       ORAPARM_INPUT, ORATYPE_NUMBER   
        OraDatabase.Parameters.Add "PKG_NAME",          "",                     ORAPARM_OUTPUT, ORATYPE_VARCHAR2
        OraDatabase.Parameters.Add "BOM_ID", parBom_id,         ORAPARM_INPUT, ORATYPE_NUMBER 
        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Base_Env.Update_Product ( :OLD_PROD_ID, :NEW_PROD_VERSION, :BASE_ENV_ID, :SEQ_NUM, :PROD_COMMENTS, :SUNOS_ELECTRONIC_NAME, :WIN_ELECTRONIC_NAME, :NOT_XML, :PATCH_ELECTRONIC_NAME, :USER_ID, :PKG_NAME ); END;"       
        
        objEH.CatchORA ( OraSession )
        
        objEH.TryORA ( OraSession )
        
        OraDatabase.ExecuteSQL _
        "BEGIN pk_Bom.Log_Os_Trail ( :OS_ID, :COMMENT, :USER_ID  ); END;"       
        
        objEH.CatchORA ( OraSession )
        
        
        
        Call PopulateSBOMField( parBom_id, NULL, objFormCollector.Item("pkg_name"), Request("new_prod_version") )               
        
                        
        OraDatabase.Parameters.Remove "OLD_PROD_ID"
        OraDatabase.Parameters.Remove "NEW_PROD_VERSION"
        OraDatabase.Parameters.Remove "BASE_ENV_ID"
        OraDatabase.Parameters.Remove "SEQ_NUM"
        OraDatabase.Parameters.Remove "PROD_COMMENTS"
        OraDatabase.Parameters.Remove "SUNOS_ELECTRONIC_NAME"
        OraDatabase.Parameters.Remove "WIN_ELECTRONIC_NAME"             
        OraDatabase.Parameters.Remove "NOT_XML"         
        OraDatabase.Parameters.Remove "PATCH_ELECTRONIC_NAME"
        OraDatabase.Parameters.Remove "USER_ID"         
        OraDatabase.Parameters.Remove "COMMENT"                                 
        OraDatabase.Parameters.Remove "OS_ID"           
        OraDatabase.Parameters.Remove "PKG_NAME"
        OraDatabase.Parameters.Remove "BOM_ID"
        
End Sub
'--------------------------------------------------------------------------------------------------------------------------
%>
<%
'------------ RUN BEFORE PAGE RENDER ----------
objPMod.PersistInQryString ( Array("base_env_id") )

' --- Get Form details from DB ---
Call GetFormDetails ( parProd_id, parOs_id, parBase_env_id, parBom_id, objFormCollector )

' --- Load Validation Rules ---
Call objForm.LoadValidationRules ( Array("product_comments"), OraDatabase )             ' Load Validation Rules

' --- Enter Form Validation Rule Changes here... ----
'----------------------------------------------------

If Request("action") = "true" Then
        If objForm.IsValidOnPostBack Then
                ' --- Form is Valid ---
                If parBase_env_id = "" Then
                        Call UpdateProdAtOs()
                Else
                        Call UpdateProdAtBaseEnv()
                End If
                
                
                If objEH.Finally Then
                        Call OpenInParentWindow ( Request("rfile") &"?UPDATED=OK"& objPMod.ComposeURLWithout("rfile") )
                        Call CloseWindow()
                End If
                
        End If
ElseIf Request("action") = "filter_off" Then
        parFilter_on = 0
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_bage_0.gif" leftmargin="0" topmargin="0" onLoad="self.focus();">
<table width="100%"  border="0" cellspacing="0" cellpadding="10">
  <tr>
    <td bgcolor="#FFFFFF" class="body_txt"><span class="body_h1"><img src="icons/i_linkarrow_black.gif" width="11" height="11" align="absmiddle">&nbsp;Edit Product</span> <br>
    Update product details and click Submit. 
    </td>
  </tr>
  <%
  '-- FROM START ---------------------------------------------------------------------------------------------------------
  objFormComponent.FormName = "FormName"
  objFormComponent.Action = SCRIPT_NAME
  objFormComponent.OnSubmit = "ShowProgress();"
  Call objFormComponent.FormStart()
  %>   
  <tr>
    <td background="images/bg_login.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><%=ProgressBar%></td>
        <td align="right"><input name="btn" type="submit" class="form_btn" value="Submit">
          <input name="btn" type="reset" class="form_btn" value="Cancel" onClick="self.close();"></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td><table width="100%"  border="0" cellspacing="2" cellpadding="0">
          <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->  
          <%If NOT objEH.Finally Then%>
      <tr>
        <td class="form_iname">&nbsp;</td>
        <td>
                 <%objEH.DisplayMessage()%>
                </td>
        <td class="val_err"></td>
      </tr>
          <%End If%>
          <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
      <tr>
        <td nowrap class="form_iname" valign="top">Install Order</td>
        <td valign="top"><%=objFormComponent.Combo ( "seq_num", GetSeqNumList( objForm.GetValue ( "seq_num", objFormCollector.Item("seq_num"))), FALSE, "class='form_ivalue'" )%></td>
                <td valign="top"></td>
      </tr>
          <tr>
        <td nowrap class="form_iname" valign="top">Product Name</td>
        <td valign="top"><%=objFormComponent.TextBox ( "pkg_name", objFormCollector.Item("pkg_name"), "size='70' class='form_ivalue' disabled" )%></td>
                <td valign="top"></td>
      </tr>
<%If IsNull(objFormCollector.Item("is_patch")) Then%>     
          <tr>
        <td nowrap class="form_iname" valign="top">SunOS Electronic Name</td>
        <td valign="top"><%=objFormComponent.TextBox ( "sunos_electronic_name", objFormCollector.Item("sunos_electronic_name"), "size='70' class='form_ivalue'" )%></td>
                <td valign="top"></td>
      </tr>
          <tr>
        <td nowrap class="form_iname" valign="top">Windows Electronic Name</td>
        <td valign="top"><%=objFormComponent.TextBox ( "win_electronic_name", objFormCollector.Item("win_electronic_name"), "size='70' class='form_ivalue'" )%></td>
                <td valign="top"></td>
      </tr>
<%Else%>
          <tr>
        <td nowrap class="form_iname" valign="top">Patch Electronic Name</td>
        <td valign="top"><%=objFormComponent.TextBox ( "patch_electronic_name", objFormCollector.Item("patch_electronic_name"), "size='70' class='form_ivalue'" )%></td>
                <td valign="top"></td>
                <input type="hidden" name="sunos_electronic_name" value="<%=objFormCollector.Item("sunos_electronic_name")%>">
                <input type="hidden" name="win_electronic_name" value="<%=objFormCollector.Item("win_electronic_name")%>">
                
      </tr>               
<%End If%>        
          <tr>
        <td nowrap class="form_iname" valign="top">Include In Node Spec File</td>
                <%If IsNull(objFormCollector.Item("is_node_spec")) Then%>
        <td valign="top"><input type="checkbox" name="is_node_spec"></td>
                <%Else%>
        <td valign="top"><input type="checkbox" name="is_node_spec" checked></td>
                <%End If%>
                <td valign="top"></td>
      </tr>     
          <tr>
        <td nowrap class="form_iname" valign="top">Checked If Not Required In XML</td>
                <%If IsNull(objFormCollector.Item("not_xml")) Then%>
        <td valign="top"><input type="checkbox" name="not_xml"></td>
                <%Else%>
        <td valign="top"><input type="checkbox" name="not_xml" checked></td>
                <%End If%>
                <td valign="top"></td>
      </tr>                       
      <tr>
        <td nowrap class="form_iname" valign="top">Version</td>
        <td valign="top"><%
                Call GetProductVersions( aRs, MoreLink )
                ForceDropdown = FALSE
                If IsNull(MoreLink) AND (parFilter_on <> "") Then ForceDropdown = TRUE

                OraDatabase.Parameters.Add "PV_ID",     parProd_id,             ORAPARM_INPUT, ORATYPE_NUMBER
                OraDatabase.Parameters.Add "OS_ID",     parOs_id,               ORAPARM_INPUT, ORATYPE_NUMBER
                        
                Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery ("Package_Patches.sql"), ORADYN_DEFAULT )
        
                If rsTemp.RecordCount = 0 Then
                        Response.write objFormComponent.ComboWithTextAndFilter ( "new_prod_version", objForm.GetValue( "new_prod_version", objFormCollector.Item("pkg_version")), aRs, "size='30' class='form_ivalue'", MoreLink, ForceDropdown )
                Else
                        Response.write objFormComponent.TextBox ( "new_prod_version", objFormCollector.Item("pkg_version"), "size='30' class='form_ivalue' readonly" )
                End If
                %></td>
                <td valign="top"></td>
      </tr>
      <tr>
        <td valign="top" nowrap class="form_iname">Comments</td>
        <td valign="top"><%=objFormComponent.TextArea ("product_comments", objForm.GetValue ( "product_comments", objFormCollector.Item("product_comments")), 22, 80, "class='form_ivalue'" )%></td>
                <td valign="top">
                <%=objForm.Validate ("product_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>
  <%=objPMod.ComposeHiddenTags()%>
  <input type="hidden" name="prod_id_list" value="<%=parProd_id%>">
  <input type="hidden" name="action" value="true">
  <%
         OraDatabase.Parameters.Remove "PV_ID"
         OraDatabase.Parameters.Remove "OS_ID"
         rsTemp.Close()
        Set rsTemp = nothing
  Call objFormComponent.FormEnd()
  '-- FROM END ----------------------------------------------------------------------------------------------------------------
  %>
</table>
</body>
</html>
<%
'------------ RUN AFTER PAGE RENDER -----------
Set objFormCollector = Nothing
'----------------------------------------------
%><!--#include file="common/globals_destructor.asp"-->