%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'| |
'| XML BOM Gen |
'| |
'=====================================================
%>
<%
Option explicit
Response.Expires = 0 ' always load the page, dont store
%>
<%
'------------ VARIABLE DEFINITION -------------
Dim objWSH
'------------ CONSTANTS DECLARATION -----------
'------------ VARIABLE INIT -------------------
'------------ CONDITIONS ----------------------
'----------------------------------------------
%>
<%
'--------------------------------------------------------------------------------------------------------------------------
'--------------------------------------------------------------------------------------------------------------------------
%>
<%
Function DateReversed ( dDate )
' Ensures Reverse Date format YYYY-MM-DD
If IsNull(dDate) Then Exit Function
DateReversed = Year(dDate) &"-"& Month(dDate) &"-"& Day(dDate)
End Function
'**************************** M A I N ******************************
If Request("bom_id") <> "" Then
Set objWSH = createWscriptShell()
objWSH.Run "cmd.exe /c cscript.exe //B //NoLogo "& APP_ROOT &"\jobs\PostBOMRelease.wsf /bom_id:"& Request("bom_id") , 0, True
On Error Resume Next
OraDatabase.Parameters.Add "BOM_ID", Request("bom_id"), ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
objEH.TryORA ( OraSession )
OraDatabase.ExecuteSQL _
"BEGIN pk_Bom.Log_Bom_Trail ( :BOM_ID, 'XML BOM GENERATED', :USER_ID, NULL ); END;"
objEH.CatchORA ( OraSession )
OraDatabase.Parameters.Remove "BOM_ID"
OraDatabase.Parameters.Remove "USER_ID"
On Error GoTo 0
Dim rsQry, objZIPObject
Dim LocalPath, ZipFile, filesys, eMsg, zCount
Set rsQry = OraDatabase.DbCreateDynaset( "SELECT bn.BOM_NAME, br.BRANCH_NAME, bn.BOM_NAME ||''|| b.BOM_VERSION ||'.'|| b.BOM_LIFECYCLE AS VERSION FROM BOMS B, BRANCHES BR, BOM_NAMES BN WHERE B.BOM_ID = "& Request("bom_id") &" AND B.BRANCH_ID = BR.BRANCH_ID AND B.BOM_NAME_ID = BN.BOM_NAME_ID", cint(0))
LocalPath = Server.MapPath("downloads") & "\" &_
NicePath(rsQry("branch_name")) & "\" &_
NicePath(rsQry("version")) & "\"&_
DateReversed(Date)
ZipFile = LocalPath &".zip"
Set filesys = CreateObject("Scripting.FileSystemObject")
Set objZIPObject = Server.CreateObject("XStandard.Zip")
If filesys.FileExists(ZipFile) Then
filesys.DeleteFile ZipFile, TRUE
End If
objZIPObject.Pack LocalPath &"\*.*", ZipFile
eMsg = objZIPObject.ErrorDescription
zCount = objZIPObject.Contents(ZipFile).Count
Response.Write "Files Zipped=" & zCount
If eMsg <> "" Then
Response.Write " with Error=" & eMsg
End If
'Response.Write("" & ZipFile)
'objZIPObject = Nothing
Set filesys = Nothing
Dim myMail
Set myMail=Server.CreateObject("Persits.MailSender")
myMail.Host = SMTP_HOST
Dim rsTemp
Set rsTemp = OraDatabase.DbCreateDynaset( "SELECT * FROM BOMS WHERE BOM_ID = "& Request("bom_id"), cint(0))
If rsTemp("is_readonly") = "Y" Then
myMail.Subject="OFFICIAL XML BOMS Generated from Deployment Manager"
Else
myMail.Subject="THESE ARE NOT OFFICIAL XML BOMS!!!"
End If
myMail.From="releasem@vixtechnology.com"
myMail.AddAddress objAccessControl.UserEmail
' Attach the file
myMail.AddAttachment ZipFile
myMail.Body = "Your requested xml files .."
myMail.Send
set myMail = nothing
set objWSH = nothing
rsTemp.Close()
Set rsTemp = Nothing
rsQry.Close()
Set rsQry = nothing
Else
Response.write "Please specify bom_id.
Example:
"& SCRIPT_NAME &"?bom_id=1234"
End If
'**********************************************************************
Call Destroy_All_Objects
%>