%@LANGUAGE="VBSCRIPT"%>
<%
Option explicit
Response.Expires = 0 ' always load the page, dont store
%>
<%
'=====================================================
' Import Release
'=====================================================
%>
<%
'------------ ACCESS CONTROL ------------------
%>
<%
'------------ Variable Definition -------------
Dim parFRrtag_id ' Current Release
Dim parFRproj_id ' Selected Project
Dim hasDaemons ' Current Release Has daemons configured
Dim importHasDaemons ' Selected Import has daemons configured
Dim sMessage, sMessageType
Dim bCanImport
Dim bReleaseSelected
'------------ Constants Declaration -----------
'------------ Variable Init -------------------
parFRrtag_id = QStrPar("FRrtag_id")
parFRproj_id = QStrPar("FRproj_id")
sMessage = NULL
sMessageType = 3
bCanImport = TRUE
If parFRproj_id = "" Then parFRproj_id = -1
If parFRrtag_id = "" Then parFRrtag_id = -1
objPMod.PersistInQryString("rtag_id")
'----------------------------------------------
%>
<%
'------------------------------------------------------------------------------------------------------------------------------------------
'
' Add a line of text to the System Message
'
Sub sMessageAdd(eLevel, text)
If NOT isNull(sMessage) Then
sMessage = sMessage & "
"
End If
sMessage = sMessage & text
If eLevel < sMessageType Then
sMessageType = eLevel
End If
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub Get_ProjectList ( nProjId )
Dim rsQry,tempLINK
OraDatabase.Parameters.Add "PROJ_ID", nProjId, ORAPARM_INPUT, ORATYPE_NUMBER
Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ProjectsCombo.sql"), ORADYN_DEFAULT )
If NOT ((NOT rsQry.BOF) AND (NOT rsQry.EOF) ) Then
If (nProjId > 0) Then
Response.write "No Projects found"
End If
Else
Response.write ""
OraDatabase.Parameters.Remove "PROJ_ID"
rsQry.Close
Set rsQry = Nothing
End If
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub Get_ReleaseList ( nProjId, nRtagId )
Dim rsQry,tempLINK
OraDatabase.Parameters.Add "PROJ_ID", nProjId, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "RTAG_ID", nRtagId, ORAPARM_INPUT, ORATYPE_NUMBER
Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ReleasesCombo.sql"), ORADYN_DEFAULT )
bReleaseSelected = FALSE
If NOT ((NOT rsQry.BOF) AND (NOT rsQry.EOF) ) Then
If (nProjId > 0) Then
Response.write "No Releases in this project"
End If
Else
Response.write ""
OraDatabase.Parameters.Remove "RTAG_ID"
OraDatabase.Parameters.Remove "PROJ_ID"
rsQry.Close
Set rsQry = Nothing
End If
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Function check_for_daemons(nRtagId, DefVal)
Dim sqlStr, rsQry
If nRtagId <> "" Then
sqlStr = "SELECT RCON_ID from RELEASE_CONFIG rc WHERE rc.rtag_id = :RTAG_ID"
OraDatabase.Parameters.Add "RTAG_ID", nRtagId, ORAPARM_INPUT, ORATYPE_NUMBER
Set rsQry = OraDatabase.DbCreateDynaset( sqlStr, ORADYN_DEFAULT )
If rsQry.BOF OR rsQry.EOF Then
check_for_daemons = False
Else
check_for_daemons = True
End If
OraDatabase.Parameters.Remove "RTAG_ID"
rsQry.Close
Set rsQry = Nothing
Else
check_for_daemons = DefVal
End If
End Function
'--------------------------------------------------------------------------------------------------------------------------
Sub importDaemons( NSrcRtag_id, NDstRtag_id)
If (NSrcRtag_id <> "") AND (NDstRtag_id <> "") Then
' All mandatory parameters FOUND
' COMPLETE THE REQUEST...
On Error Resume Next
objEH.ErrorRedirect = FALSE
OraDatabase.Parameters.Add "FROMRTAG_ID", NSrcRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "TORTAG_ID", NDstRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
objEH.TryORA ( OraSession )
' Remove old Work in Progress Contents
OraDatabase.ExecuteSQL "BEGIN PK_BUILDAPI.IMPORT_DAEMONS (:FROMRTAG_ID, :TORTAG_ID, :USER_ID); END;"
objEH.CatchORA ( OraSession )
OraDatabase.Parameters.Remove "FROMRTAG_ID"
OraDatabase.Parameters.Remove "TORTAG_ID"
OraDatabase.Parameters.Remove "USER_ID"
If objEH.Finally Then
OpenInParentWindow("build_status.asp?rtag_id="& NDstRtag_id )
Call Destroy_All_Objects
Response.End
End If
sMessage = "Failure"
Else
Call sMessageAdd( 1, "Internal: Some mandatory parameters are missing!
" & QSTR_FullQuery )
parFRproj_id = -1
parFRrtag_id = -1
End If
End Sub
'--------------------------------------------------------------------------------------------------------------------------
%>
<%
'Process submition
If CBool(QStrPar("action")) Then
Call importDaemons(Request.Form("FromRtag_id"),Request("rtag_id"))
bCanImport = FALSE
parFRproj_id = -1
parFRrtag_id = -1
Else
' Run before render
hasDaemons = check_for_daemons(Request("rtag_id"), False)
importHasDaemons = check_for_daemons(parFRrtag_id, True)
If hasDaemons Then
Call sMessageAdd( 2, "The current release already has build daemons configured. It is not possible to import a daemon configuration into this release.")
bCanImport = FALSE
ElseIf NOT importHasDaemons AND (parFRrtag_id > 0) Then
Call sMessageAdd(2, "No Daemons in this Release to be imported")
bCanImport = FALSE
End If
End If
%>