%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
' NEW Unit Test
' --- PROCESS FORM ---
'=====================================================
%>
<%
Option explicit
' Good idea to set when using redirect
Response.Expires = 0 ' always load the page, dont store
%>
<%
' Set rfile parameter. This is a return page after Login
Call objPMod.StoreParameter ( "rfile", "fixed_issues.asp" )
'------------ ACCESS CONTROL ------------------
%>
<%
'------------ Variable Definition -------------
Dim parPv_id
Dim objUpload
Dim sFileName
Dim sPath
Dim newID
Dim retErrCode
Dim sPkgName
Dim sPkgVersion
'------------ Constants Declaration -----------
'------------ Variable Init -------------------
Set objUpload = New clsUpload
'parPv_id = objUpload.Fields("pv_id").Value
'----------------------------------------------
%>
<%
Sub New_Unit_Test ( nPv_id, _
nTestTypeId, _
sTest_summary, _
sNumofTest, _
sResults_attachment, _
sResults_url, _
sCompletion_date, _
nFileSize, _
outFileName )
' IN PARAMETERS
OraDatabase.Parameters.Add "PV_ID", nPv_id, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "TEST_TYPE_ID", nTestTypeId, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "TEST_SUMMARY", sTest_summary, ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "NUMOF_TEST", sNumofTest, ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "DPKG_PATH", DOC_FOLDER, ORAPARM_INPUT, ORATYPE_VARCHAR2
If CInt(nTestTypeId) = enumTEST_TYPE_AUTOMATIC Then
If InStr( sResults_url, dpkg_archiveURL & sPkgName &"/"& sPkgVersion ) > 0 Then
' URL is in dpkg_archive, hence remove front URL location
OraDatabase.Parameters.Add "RESULTS", Right( sResults_url, Len(sResults_url) - Len( dpkg_archiveURL & sPkgName &"/"& sPkgVersion ) ), ORAPARM_INPUT, ORATYPE_VARCHAR2
Else
OraDatabase.Parameters.Add "RESULTS", sResults_url, ORAPARM_INPUT, ORATYPE_VARCHAR2
End If
Else
If nFileSize > 0 Then
OraDatabase.Parameters.Add "RESULTS", sResults_attachment, ORAPARM_INPUT, ORATYPE_VARCHAR2
Else
OraDatabase.Parameters.Add "RESULTS", NULL, ORAPARM_INPUT, ORATYPE_VARCHAR2
End If
End If
OraDatabase.Parameters.Add "COMPLETION_DATE", sCompletion_date, ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "COMPLETED_BY", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "enumTEST_TYPE_AUTOMATIC", enumTEST_TYPE_AUTOMATIC, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "enumTEST_TYPE_NOT_DONE", enumTEST_TYPE_NOT_DONE, ORAPARM_INPUT, ORATYPE_NUMBER
' OUT PARAMETERS
OraDatabase.Parameters.Add "FILENAME", "", ORAPARM_OUTPUT, ORATYPE_VARCHAR2
objEH.TryORA ( OraSession )
On Error Resume Next
OraDatabase.ExecuteSQL _
"BEGIN New_Unit_Test ( :PV_ID,"&_
" :TEST_TYPE_ID,"&_
" :TEST_SUMMARY,"&_
" :NUMOF_TEST,"&_
" :DPKG_PATH,"&_
" :RESULTS,"&_
" :COMPLETION_DATE,"&_
" :COMPLETED_BY,"&_
" :enumTEST_TYPE_AUTOMATIC, "&_
" :enumTEST_TYPE_NOT_DONE, "&_
" :FILENAME "&_
" ); END;"
objEH.CatchORA ( OraSession )
outFileName = OraDatabase.Parameters("FILENAME").Value
OraDatabase.Parameters.Remove "PV_ID"
OraDatabase.Parameters.Remove "TEST_TYPE_ID"
OraDatabase.Parameters.Remove "TEST_SUMMARY"
OraDatabase.Parameters.Remove "NUMOF_TEST"
OraDatabase.Parameters.Remove "DPKG_PATH"
OraDatabase.Parameters.Remove "RESULTS"
OraDatabase.Parameters.Remove "COMPLETION_DATE"
OraDatabase.Parameters.Remove "COMPLETED_BY"
OraDatabase.Parameters.Remove "enumTEST_TYPE_AUTOMATIC"
OraDatabase.Parameters.Remove "enumTEST_TYPE_NOT_DONE"
OraDatabase.Parameters.Remove "FILENAME"
End Sub
%>
<%
'----------------------- MAIN LINE ---------------------------
'--- Process submition ---
If (objUpload.Fields("pv_id").Value <> "") Then
' Insert Unit Test Record
Call Get_Pkg_Short_Info( objUpload.Fields("pv_id").Value, NULL, sPkgName, sPkgVersion, NULL, NULL, NULL )
If instr(Request.ServerVariables("HTTP_USER_AGENT"), "MSIE") > 0 Then
Call New_Unit_Test ( objUpload.Fields("pv_id").Value, _
objUpload.Fields("test_type_id").Value, _
objUpload.Fields("test_summary").Value, _
objUpload.Fields("numof_test").Value, _
objUpload.Fields("results_file").FileName, _
objUpload.Fields("results_url").Value, _
objUpload.Fields("completion_date").Value, _
objUpload.Fields("results_file").Length, _
sFileName )
Else
Call New_Unit_Test ( objUpload.Fields("pv_id").Value, _
objUpload.Fields("test_type_id").Value, _
objUpload.Fields("test_summary").Value, _
objUpload.Fields("numof_test").Value, _
objUpload.Fields("results_file").FilePath, _
objUpload.Fields("results_url").Value, _
objUpload.Fields("completion_date").Value, _
objUpload.Fields("results_file").Length, _
sFileName )
End If
'If retErrCode <> 0 Then
' OraSession.RollBack
' Call RaiseMsg ( enum_MSG_DUPLICATE_UT, objUpload.Fields("test_name").Value )
'End If
' Upload File
'On Error Resume Next
If CInt(objUpload.Fields("test_type_id").Value) <> enumTEST_TYPE_AUTOMATIC AND objUpload.Fields("results_file").FilePath <> "" Then
If objUpload.Fields("results_file").Length > 0 Then
' Compile path to save file to
sPath = Server.MapPath( TEMP_FOLDER )
Call Create_Folder ( sPath, sPkgName )
sPath = sPath & "\" & sPkgName
Call Create_Folder ( sPath, sPkgVersion )
sPath = sPath &"\"& sPkgVersion
Call Create_Folder ( sPath, DOC_FOLDER )
sPath = sPath &"\"& DOC_FOLDER &"\"& sFileName
Call DeleteFile( sPath ) ' Delete the file if already exists
' Save the binary data to the file system
objUpload("results_file").SaveAs sPath
End If
End If
If Err.number <> 0 Then
Call RaiseMsgInParent ( enum_MSG_ERROR, "Upload is not completed.
"& Err.description )
Else
Call OpenInParentWindow ("fixed_issues.asp?pv_id="& objUpload.Fields("pv_id").Value &"&rtag_id="& objUpload.Fields("rtag_id").Value )
End If
'Response.write "PLEASE TRY USING THIS LATER! (Debuging)
"& objUpload.Fields("pv_id").Value
Set objUpload = Nothing
Call CloseWindow
Else
Response.write "Some mandatory parameters are missing!" & "
" 'TODO
Response.write QSTR_FullQuery
End If
%>