Rev 62 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%@LANGUAGE="VBSCRIPT"%><%'====================================================='| |'| wSyncProducts |'| |'=====================================================%><%Option explicitResponse.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 rsQryDim aProductsDim numOfRowsDim rowNumDim objFormCollectorDim currPkg_id'------------ CONSTANTS DECLARATION -----------'------------ VARIABLE INIT -------------------parBom_id = Request("bom_id")Set objFormCollector = CreateObject("Scripting.Dictionary")'------------ CONDITIONS ----------------------'----------------------------------------------%><%'----------------------------------------------------------------------------------------------------------------------------------Sub GetFormDetails ( nBom_id, ByRef outobjDetails )Dim rsQry, queryOraDatabase.Parameters.Add "BOM_ID", nBom_id, ORAPARM_INPUT, ORATYPE_NUMBERquery = _" SELECT RTAG_ID_FK "&_" FROM BOMS bo"&_" WHERE bo.BOM_ID = :BOM_ID"Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )query = _" SELECT branch_name, branch_id "&_" FROM BRANCHES br"&_" WHERE br.branch_id ="&rsQry("rtag_id_fk")Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )If (NOT rsQry.BOF) AND (NOT rsQry.EOF) ThenoutobjDetails.Item ("branch_id") = rsQry("branch_id")outobjDetails.Item ("branch_name") = rsQry("branch_name")End IfOraDatabase.Parameters.Remove "BOM_ID"rsQry.CloseSet rsQry = NothingEnd Sub'----------------------------------------------------------------------------------------------------------------------------------Sub UpdateProducts()Dim aDiffList, numOfRows, rowNum, OraParameterConst os_id_column = 2Const old_prod_id_column = 1'/* Get Lates Release Manager */OraDatabase.Parameters.Add "BOM_ID", parBom_id, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "RTAG_ID", objFormCollector.Item("rtag_id_fk"), ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("CompareBomWithLatestFromRM.sql"), ORADYN_DEFAULT )'-- Get RowsIf rsQry.RecordCount > 0 ThenaDiffList = rsQry.GetRows()Else'-- No differencses with Release Manager, hence exitOraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "RTAG_ID"Exit SubEnd If'/* Update Versions */On Error Resume NextOraDatabase.Parameters.Add "OLD_PROD_ID", 0, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "NEW_PROD_ID", 0, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "OS_ID", 0, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBERSet OraParameter = OraDatabase.ParametersobjEH.TryORA ( OraSession )numOfRows = UBound( aDiffList, 2 )For rowNum = 0 To numOfRowsIf Request("update_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( old_prod_id_column, rowNum ) ) <> "" ThenOraParameter("OLD_PROD_ID").Value = aDiffList( old_prod_id_column, rowNum )OraParameter("NEW_PROD_ID").Value = Request("update_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( old_prod_id_column, rowNum ) )OraParameter("OS_ID").Value = aDiffList( os_id_column, rowNum )OraDatabase.ExecuteSQL "BEGIN pk_Product.Replace_Product ( :OLD_PROD_ID, :NEW_PROD_ID, :OS_ID, :USER_ID ); END;"End IfNext'--- Log Action ---'objEH.LogAction _'objAccessControl.UserId, _'enumAT_EVENT_COMMENT, _'"Sub UpdateProducts for OS list="& Request("spos_id_list"), _'SCRIPT_NAME, _'"Updated Products with new versions.", _'OraDatabaseobjEH.CatchORA ( OraSession )OraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "RTAG_ID"OraDatabase.Parameters.Remove "OLD_PROD_ID"OraDatabase.Parameters.Remove "NEW_PROD_ID"OraDatabase.Parameters.Remove "OS_ID"OraDatabase.Parameters.Remove "USER_ID"End Sub'----------------------------------------------------------------------------------------------------------------------------------Sub AddPatches()Dim aDiffList, numOfRows, rowNum, OraParameterConst os_id_column = 2Const prod_id_column = 1'/* Get Lates Release Manager */OraDatabase.Parameters.Add "BOM_ID", parBom_id, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NewPatches.sql"), ORADYN_DEFAULT )'-- Get RowsIf rsQry.RecordCount > 0 ThenaDiffList = rsQry.GetRows()Else'-- No differencses with Release Manager, hence exitOraDatabase.Parameters.Remove "BOM_ID"Exit SubEnd If'/* Update Versions */On Error Resume NextOraDatabase.Parameters.Add "NEW_PROD_ID", 0, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "OS_ID", 0, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBERSet OraParameter = OraDatabase.ParametersobjEH.TryORA ( OraSession )numOfRows = UBound( aDiffList, 2 )For rowNum = 0 To numOfRowsIf Request("add_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( prod_id_column, rowNum ) ) <> "" ThenOraParameter("NEW_PROD_ID").Value = Request("add_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( prod_id_column, rowNum ) )OraParameter("OS_ID").Value = aDiffList( os_id_column, rowNum )OraDatabase.ExecuteSQL "BEGIN pk_Product.Add_Product ( :NEW_PROD_ID, :OS_ID, :USER_ID ); END;"End IfNextobjEH.CatchORA ( OraSession )OraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "NEW_PROD_ID"OraDatabase.Parameters.Remove "OS_ID"OraDatabase.Parameters.Remove "USER_ID"End Sub'----------------------------------------------------------------------------------------------------------------------------------%><%'------------ RUN BEFORE PAGE RENDER ----------Call GetFormDetails ( parBom_id, objFormCollector )If Request("action") <> "" Then' --- Form is Valid ---Call UpdateProducts()Call AddPatches()If objEH.Finally ThenCall OpenInParentWindow ( Request("rfile") &"?UPDATED=OK"& objPMod.ComposeURLWithout("rfile") )Call CloseWindow()End IfEnd If'----------------------------------------------%><html><head><SCRIPT LANGUAGE="JavaScript"><!-- Beginvar checkflag = "false";function check(field) {if (checkflag == "false") {for (i = 0; i < field.length; i++) {field[i].checked = true;}checkflag = "true";return "Uncheck all"; }else {for (i = 0; i < field.length; i++) {field[i].checked = false; }checkflag = "false";return "Check all"; }}// End --></script><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><style type="text/css"><!--.style8 {font-size: 12px}--></style></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"> Add Patches </span> <br>Add Patches, selecting the approved ones from "Production Manager".</td></tr><%'-- FROM START --------------------------------------------------------------------------------------------------------------objFormComponent.FormName = "FormName"objFormComponent.Action = SCRIPT_NAMEobjFormComponent.OnSubmit = "ShowProgress();"Call objFormComponent.FormStart()%><tr><td background="images/bg_login.gif"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td><%=ProgressBar()%><input name="btn" type="submit" class="form_btn" value="Add"><input name="btn" type="reset" class="form_btn" value="Cancel" onClick="self.close();"></td><td align="left"> </td></tr></table></td></tr><tr><td><!-- PRODUCT NAME RESULTS ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --><table width="100%" border="0" cellspacing="10" cellpadding="0"><tr><td width="100%" valign="top" nowrap class="body_txt"><!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ --><!--#include file="messages/_msg_inline.asp"--><!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --><%If objFormCollector.Item("branch_id") = "" ThenCall Messenger ( "This BOM does not have Release Manager Reference release.<br>Please edit BOM properties first.<br>", 1, "100%" )End If%><!-- ADD PATCHES +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->Select Patches and click Add.<table width="100%" border="0" cellspacing="3" cellpadding="0"><%OraDatabase.Parameters.Add "BOM_ID", parBom_id, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "BRANCH_ID", objFormCollector.Item("branch_id"), ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NewPatches.sql"), ORADYN_DEFAULT )currPkg_id = 0%><%If rsQry.RecordCount > 0 Then%><tr><td nowrap background="images/bg_bage_0h.gif" class="body_col" align="center">Add</td><td align="right" nowrap background="images/bg_bage_0h.gif" class="body_col"><div align="left">Location</div></td><td align="right" nowrap background="images/bg_bage_0h.gif" class="body_col"><div align="left">Version</div></td><td align="right" background="images/bg_bage_0h.gif" class="body_col"><div align="left">Comments<img src="images/spacer.gif" width="1" height="18" align="absmiddle"></div> </td></tr><%While (NOT rsQry.BOF) AND (NOT rsQry.EOF)%><%If currPkg_id <> rsQry("pkg_id") Then%><tr><td colspan="2" nowrap><div align="left"><span class="body_row"><img src="icons/i_product.gif" width="19" height="19" hspace="2" align="absmiddle"><%=rsQry("prod_name")%></span></div></td><td nowrap class="body_row"> </td><td nowrap class="body_row"></td></tr><tr><td colspan="4" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="1"></td></tr><%currPkg_id = rsQry("pkg_id")%><%End If%><%Dim rsFormSet rsForm = OraDatabase.DbCreateDynaset("SELECT * FROM RELEASE_AUTHORISATION WHERE PV_ID="&rsQry("prod_id")&" AND BOM_ID="&parBom_id, ORADYN_DEFAULT)If rsForm("is_official") = "Y" Then%><tr><td align="center" nowrap><input type="checkbox" name="add_<%=rsQry("os_id") &"_"& rsQry("prod_id")%>" value="<%=rsQry("prod_id")%>"> </td><td nowrap class="body_row"><img hspace="2" src="icons/<%=rsQry("node_icon")%>" align="absmiddle" border="0"><%=rsQry("prod_location")%></td><td nowrap class="body_row"><img src="icons/i_patch_small.gif" width="16" height="16" border="0" align="absmiddle"><%=rsQry("prod_version")%></td><td nowrap class="body_row"><span class="body_row"><%=rsQry("comments")%></span></td></tr><tr><td colspan="4" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="1"></td></tr><%End IfrsForm.Close()Set rsForm = Nothing%><%rsQry.MoveNextWend%><%End If%><tr><td colspan="4" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="3"></td></tr></table><%OraDatabase.Parameters.Remove "BRANCH_ID"OraDatabase.Parameters.Remove "BOM_ID"rsQry.CloseSet rsQry = Nothing%> </td></tr></table><!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --></td></tr><%=objPMod.ComposeHiddenTags()%><input type="hidden" name="action" value="true"><%Call objFormComponent.FormEnd()'-- FROM END ----------------------------------------------------------------------------------------------------------------%></table></body></html><%'------------ RUN AFTER PAGE RENDER -----------'----------------------------------------------%><!--#include file="common/globals_destructor.asp"-->