Rev 29 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?xml version="1.0" ?><package><comment>PrimalCode wizard generated file.</comment><job id="GenerateXMLNodeDefinitons" args="/bom_id:2864" prompt="no"><?job error="false" debug="false" ?><runtime><named helpstring="Bom ID" name="bom_id" required="false" type="string"/></runtime><object id="Oracle_Objects_For_OLE" progid="OracleInProcServer.XOraServer" events="true"/><script language="VBScript" src="common_subs.vbs"/><script language="VBScript" src="config.vbs"/><script id="GenerateXMLNodeDefnitions" language="VBScript"><![CDATA[Option Explicit'=====================================================' Name: GetComponents' Description: Connects to dpkg_archive and gets the' content of folders and files of certain' package. It then stores this info into' Release Manager database. This info can' later be included in release notes Or' searched with search engine.' INPUT: pkg_name' pkg_version'====================================================='== Variable Definition ==============================Dim BomIdDim objArgs'== Constants Declaration ============================'== Variable Init ===================================='====================================================='-----------------------------------------------------------------------------------------------------------------Sub GenerateXMLNodeDefinitionsWindows ( nBomId )Dim rsQry, aNetworkNodes, XMLNode, DateStringDim lastRow, row' Remove existing stuffCall DeleteFile( APP_ROOT &"downloads\*" )OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NetworkNodes.sql"), ORADYN_DEFAULT )OraDatabase.Parameters.Remove "BOM_ID"If rsQry.RecordCount > 0 ThenaNetworkNodes = rsQry.GetRows()End IflastRow = UBound( aNetworkNodes, 2 )DateString = DateReversed( Date )For row = 0 To lastRowXMLNode = NullXMLNode = XMLNode &_" <BomHeader>"& vbNewLine &_" <release_ident></release_ident>"& vbNewLine &_" <bom_name>"& aNetworkNodes( 1, row ) &" Windows</bom_name>"& vbNewLine &_" <bom_type>system</bom_type>"& vbNewLine &_" <bom_version>"& aNetworkNodes( 2, row ) &"."& aNetworkNodes( 3, row ) &"</bom_version>"& vbNewLine &_" <bom_date>"& DateString &"</bom_date>"& vbNewLine &_" <bom_status>REG</bom_status>"& vbNewLine &_" <bom_status_date>"& DateString &"</bom_status_date>"& vbNewLine &_" </BomHeader>"& vbNewLine'-- Get Node Base Configurations Details For Windows OS --XMLNode = XMLNode & GetNodeBaseConfigDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine'-- Get Node Product Details For Windows OS --XMLNode = XMLNode & GetNodeDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine' Close xml node tag before savingXMLNode = _"<BomDistribution>"& vbNewLine &_XMLNode &"</BomDistribution>"& vbNewLine'WScript.Echo XMLNodeIf GetNodeBaseConfigDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) <> "" OR GetNodeDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) <> "" Then' Save to a fileCall SaveFile( DateString, NicePath(rsQry("version")), NicePath(rsQry("branch_name")), APP_ROOT &"downloads", FormatFileName( aNetworkNodes( 1, row ) ) &"_Windows.xml", XMLNode )End IfNextEnd Sub'-----------------------------------------------------------------------------------------------------------------Sub GenerateXMLNodeDefinitionsSunOS ( nBomId )Dim rsQry, aNetworkNodes, XMLNode, DateStringDim lastRow, row' Remove existing stuffCall DeleteFile( APP_ROOT &"downloads\*" )OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NetworkNodes.sql"), ORADYN_DEFAULT )OraDatabase.Parameters.Remove "BOM_ID"If rsQry.RecordCount > 0 ThenaNetworkNodes = rsQry.GetRows()End IflastRow = UBound( aNetworkNodes, 2 )DateString = DateReversed( Date )For row = 0 To lastRowXMLNode = NullXMLNode = XMLNode &_" <BomHeader>"& vbNewLine &_" <release_ident></release_ident>"& vbNewLine &_" <bom_name>"& aNetworkNodes( 1, row ) &" SunOS</bom_name>"& vbNewLine &_" <bom_type>system</bom_type>"& vbNewLine &_" <bom_version>"& aNetworkNodes( 2, row ) &"."& aNetworkNodes( 3, row ) &"</bom_version>"& vbNewLine &_" <bom_date>"& DateString &"</bom_date>"& vbNewLine &_" <bom_status>REG</bom_status>"& vbNewLine &_" <bom_status_date>"& DateString &"</bom_status_date>"& vbNewLine &_" </BomHeader>"& vbNewLine'-- Get Node Base Configurations Details For Sun OS --XMLNode = XMLNode & GetNodeBaseConfigDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine'-- Get Node Product Details For Sun OS --XMLNode = XMLNode & GetNodeDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine' Close xml node tag before savingXMLNode = _"<BomDistribution>"& vbNewLine &_XMLNode &"</BomDistribution>"& vbNewLine'WScript.Echo XMLNodeIf GetNodeBaseConfigDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) <> "" OR GetNodeDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) <> "" Then' Save to a fileCall SaveFile( DateString, NicePath(rsQry("version")), NicePath(rsQry("branch_name")), APP_ROOT &"downloads", FormatFileName( aNetworkNodes( 1, row ) ) &"_SunOS.xml", XMLNode )End IfNextEnd Sub'-----------------------------------------------------------------------------------------------------------------Function FormatFileName ( sFileName )Dim sReturnsReturn = Replace ( sFileName, "/", "" )sReturn = Replace ( sReturn, "\", "" )sReturn = Replace ( sReturn, "&", "And" )sReturn = Replace ( sReturn, " ", "_" )FormatFileName = sReturnEnd Function'-----------------------------------------------------------------------------------------------------------------Function GetNodeBaseConfigDetailsWindows ( nBomId, nNodeId )Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType, pkgVersionOraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeBaseConfigsWindows.sql"), ORADYN_DEFAULT )OraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "NODE_ID"While (NOT rsQry.BOF) AND (NOT rsQry.EOF)'If rsQry("is_patch") <> "" Then' If rsQry("patch_electronic_name") <> "" Then' pkgName = rsQry("patch_electronic_name")' Else' pkgName = rsQry("pkg_name")' End If'ElseIf rsQry("win_electronic_name") <> "" ThenpkgName = rsQry("win_electronic_name")ElsepkgName = rsQry("pkg_name")End If'End IfIf rsQry("is_patch") = "Y" ThenpkgReleaseType = "PT"ElsepkgReleaseType = "FR"End IfIf rsQry("os_name") <> "" ThenosType = rsQry("os_name")ElseosType = rsQry("bos_type")End IfpkgVersion = rsQry("pkg_version")If rsQry("is_patch") <> "" ThenIf rsQry("patch_electronic_name") <> "" ThenpkgVersion = rsQry("patch_electronic_name")End IfEnd IfXMLPackageString = XMLPackageString &_" <PackageRecord>"& vbNewLine &_" <pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_" <pkg_version>"& pkgVersion &"</pkg_version>"& vbNewLine &_" <pkg_date>2003-03-01</pkg_date>"& vbNewLine &_" <pkg_status>REG</pkg_status>"& vbNewLine &_" <pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_" <pkg_target></pkg_target>"& vbNewLine &_" <pkg_platform_list>"& vbNewLine &_" <platform_record>"& osType &"</platform_record>"& vbNewLine &_" </pkg_platform_list>"& vbNewLine &_" <pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_" </PackageRecord>"& vbNewLinersQry.MoveNext()WendrsQry.Close()Set rsQry = Nothing' Return stringGetNodeBaseConfigDetailsWindows = XMLPackageStringEnd Function'-----------------------------------------------------------------------------------------------------------------Function GetNodeBaseConfigDetailsSunOS ( nBomId, nNodeId )Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType, pkgVersionOraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeBaseConfigsSunOS.sql"), ORADYN_DEFAULT )OraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "NODE_ID"While (NOT rsQry.BOF) AND (NOT rsQry.EOF)'If rsQry("is_patch") <> "" Then' If rsQry("patch_electronic_name") <> "" Then' pkgName = rsQry("patch_electronic_name")' Else' pkgName = rsQry("pkg_name")' End If'ElseIf rsQry("sunos_electronic_name") <> "" ThenpkgName = rsQry("sunos_electronic_name")ElsepkgName = rsQry("pkg_name")End If'End IfIf rsQry("is_patch") = "Y" ThenpkgReleaseType = "PT"ElsepkgReleaseType = "FR"End IfIf rsQry("os_name") <> "" ThenosType = rsQry("os_name")ElseosType = rsQry("bos_type")End IfpkgVersion = rsQry("pkg_version")If rsQry("is_patch") <> "" ThenIf rsQry("patch_electronic_name") <> "" ThenpkgVersion = rsQry("patch_electronic_name")End IfEnd IfXMLPackageString = XMLPackageString &_" <PackageRecord>"& vbNewLine &_" <pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_" <pkg_version>"& pkgVersion &"</pkg_version>"& vbNewLine &_" <pkg_date>2003-03-01</pkg_date>"& vbNewLine &_" <pkg_status>REG</pkg_status>"& vbNewLine &_" <pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_" <pkg_target></pkg_target>"& vbNewLine &_" <pkg_platform_list>"& vbNewLine &_" <platform_record>"& osType &"</platform_record>"& vbNewLine &_" </pkg_platform_list>"& vbNewLine &_" <pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_" </PackageRecord>"& vbNewLinersQry.MoveNext()WendrsQry.Close()Set rsQry = Nothing' Return stringGetNodeBaseConfigDetailsSunOS = XMLPackageStringEnd Function'-----------------------------------------------------------------------------------------------------------------Function GetNodeDetailsWindows ( nBomId, nNodeId )Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType, pkgVersionOraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeProductsWindows.sql"), ORADYN_DEFAULT )OraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "NODE_ID"While (NOT rsQry.BOF) AND (NOT rsQry.EOF)'If rsQry("is_patch") <> "" Then' If rsQry("patch_electronic_name") <> "" Then' pkgName = rsQry("patch_electronic_name")' Else' pkgName = rsQry("pkg_name")' End If'ElseIf rsQry("win_electronic_name") <> "" ThenpkgName = rsQry("win_electronic_name")ElsepkgName = rsQry("pkg_name")End If'End IfIf rsQry("is_patch") = "Y" ThenpkgReleaseType = "PT"ElsepkgReleaseType = "FR"End IfIf rsQry("os_name") <> "" ThenosType = rsQry("os_name")ElseosType = rsQry("bos_type")End IfpkgVersion = rsQry("pkg_version")If rsQry("is_patch") <> "" ThenIf rsQry("patch_electronic_name") <> "" ThenpkgVersion = rsQry("patch_electronic_name")End IfEnd IfXMLPackageString = XMLPackageString &_" <PackageRecord>"& vbNewLine &_" <pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_" <pkg_version>"& pkgVersion &"</pkg_version>"& vbNewLine &_" <pkg_date>2003-03-01</pkg_date>"& vbNewLine &_" <pkg_status>REG</pkg_status>"& vbNewLine &_" <pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_" <pkg_target></pkg_target>"& vbNewLine &_" <pkg_platform_list>"& vbNewLine &_" <platform_record>"& osType &"</platform_record>"& vbNewLine &_" </pkg_platform_list>"& vbNewLine &_" <pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_" </PackageRecord>"& vbNewLinersQry.MoveNext()WendrsQry.Close()Set rsQry = Nothing' Return stringGetNodeDetailsWindows = XMLPackageStringEnd Function'-----------------------------------------------------------------------------------------------------------------Function GetNodeDetailsSunOS ( nBomId, nNodeId )Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType, pkgVersionOraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeProductsSunOS.sql"), ORADYN_DEFAULT )OraDatabase.Parameters.Remove "BOM_ID"OraDatabase.Parameters.Remove "NODE_ID"While (NOT rsQry.BOF) AND (NOT rsQry.EOF)'If rsQry("is_patch") <> "" Then' If rsQry("patch_electronic_name") <> "" Then' pkgName = rsQry("patch_electronic_name")' Else' pkgName = rsQry("pkg_name")' End If'ElseIf rsQry("sunos_electronic_name") <> "" ThenpkgName = rsQry("sunos_electronic_name")ElsepkgName = rsQry("pkg_name")End If'End IfIf rsQry("is_patch") = "Y" ThenpkgReleaseType = "PT"ElsepkgReleaseType = "FR"End IfIf rsQry("os_name") <> "" ThenosType = rsQry("os_name")ElseosType = rsQry("bos_type")End IfpkgVersion = rsQry("pkg_version")If rsQry("is_patch") <> "" ThenIf rsQry("patch_electronic_name") <> "" ThenpkgVersion = rsQry("patch_electronic_name")End IfEnd IfXMLPackageString = XMLPackageString &_" <PackageRecord>"& vbNewLine &_" <pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_" <pkg_version>"& pkgVersion &"</pkg_version>"& vbNewLine &_" <pkg_date>2003-03-01</pkg_date>"& vbNewLine &_" <pkg_status>REG</pkg_status>"& vbNewLine &_" <pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_" <pkg_target></pkg_target>"& vbNewLine &_" <pkg_platform_list>"& vbNewLine &_" <platform_record>"& osType &"</platform_record>"& vbNewLine &_" </pkg_platform_list>"& vbNewLine &_" <pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_" </PackageRecord>"& vbNewLinersQry.MoveNext()WendrsQry.Close()Set rsQry = Nothing' Return stringGetNodeDetailsSunOS = XMLPackageStringEnd Function'-----------------------------------------------------------------------------------------------------------------'=================================== MAIN LINE ======================================WScript.Echo "==================== job:GenerateXMLNodeDefenitions ===================="Set objArgs = WScript.ArgumentsIf (objArgs.Unnamed.Count > 0) ThenWscript.Echo "ERROR: Unnamed parameters!"objArgs.ShowUsageWScript.QuitElseBomId = objArgs.Named.Item("bom_id")If ( BomId <> "" ) Then'Generation of Node Spec Files for Windows OS.Call GenerateXMLNodeDefinitionsWindows( BomId )'Generation of Node Spec Files for Sun OS.Call GenerateXMLNodeDefinitionsSunOS( BomId )ElseobjArgs.ShowUsageWScript.QuitEnd IfEnd IfWScript.Echo "Job completed successfully!"'====================================================================================]]></script></job></package>