app

**************************************************************************************
‘* 功能 : 入口
‘* 参数 :
‘* 返回值:
‘* 备注 :
**************************************************************************************
Public Sub Create(ByVal i As Integer)

Dim formatFilePath As String
Dim strFileName As String
Dim rs As ADODB.Recordset
Dim sql, excuteSql, orderSql As String

On Error GoTo ErrHandler

'暂收警告开始
Call WriteLog(Log_Prompt, "zanshou", I_MESSAGE5 & "    " & Now())

' Format文件路径
formatFilePath = g_Path & Template_Dir & zsFileName & File_ExtentionName

'创建excel对象
Set xlApp = CreateObject("excel.application")
'打开template
Set xlBook = xlApp.Workbooks.Open(formatFilePath)
'设置excel对象可见
xlApp.Visible = False
'禁止弹出对话框
xlApp.DisplayAlerts = False

'只需要拼接条件的sql
 sql = "select T3.PRO_PERIOD AS COL1," & _
"T1.POOMS_PO_NUM AS COL2," & _
"T3.SOD_WST_SS_SM_ORDER_NO AS COL3," & _
"T1.ITEM_NUM AS COL4," & _
"T2.PRT_CDESC AS COL5," & _
"T1.DWG_NO AS COL6," & _
"GET_BIANSHU(T1.PD2_PM2_RQST_NO) AS COL7," & _
"T1.QNTY AS COL8," & _
"T1.DEL_DT AS COL9," & _
"NVL(T1.QNTY - T4.SUMZS,T1.QNTY) AS COL10," & _
"GET_delay_days(T1.DEL_DT) AS COL11," & _
"T2.VEN_VENDOR_NUM AS COL12," & _
"T2.BUYER AS COL13 " & _
"FROM T_PODTL T1 " & _
"LEFT JOIN T_POMSTER T2 " & _
"ON T1.POOMS_PO_NUM = T2.PO_NUM " & _
"LEFT JOIN T_PRMSTER T3 " & _
"ON T1.PD2_PM2_RQST_NO = T3.RQST_NO " & _
"LEFT JOIN (SELECT PODTL_POOMS_PO_NUM, NVL(SUM(QTY_RCVD),0) AS SUMZS " & _
"            FROM T_MIDTL " & _
"          GROUP BY PODTL_POOMS_PO_NUM) T4 " & _
"ON T1.POOMS_PO_NUM = T4.PODTL_POOMS_PO_NUM  " & _
"WHERE GET_delay_days(T1.DEL_DT) > 0  AND (T1.QNTY <>T4.SUMZS OR T4.SUMZS IS NULL) "
orderSql = " ORDER BY COL1,COL2"

'⑤------------------------------------------
Set xlSheet = xlBook.Sheets(SheetName5)
xlSheet.Activate

excuteSql = sql & " AND (T3.PRO_PERIOD LIKE '%A1' OR T3.PRO_PERIOD LIKE '%B3' OR T3.PRO_PERIOD LIKE '%C5')"
excuteSql = excuteSql & orderSql
Set rs = m_Conn.Execute(excuteSql)

xlSheet.[a2].CopyFromRecordset rs
xlSheet.Cells(1, 1).Select
xlSheet.Range("A2:M" & (rs.RecordCount + 1)).Borders.LineStyle = xlContinuous

'④------------------------------------------
Set xlSheet = xlBook.Sheets(SheetName4)
xlSheet.Activate

excuteSql = sql & " AND (T3.PRO_PERIOD LIKE '%A2' OR T3.PRO_PERIOD LIKE '%B4' OR T3.PRO_PERIOD LIKE '%C6') AND T1.POOMS_PO_NUM LIKE 'Z%'"
excuteSql = excuteSql & orderSql
Set rs = m_Conn.Execute(excuteSql)

xlSheet.[a2].CopyFromRecordset rs
xlSheet.Cells(1, 1).Select
xlSheet.Range("A2:M" & (rs.RecordCount + 1)).Borders.LineStyle = xlContinuous

'③------------------------------------------
Set xlSheet = xlBook.Sheets(SheetName3)
xlSheet.Activate

excuteSql = sql & " AND (T3.PRO_PERIOD LIKE '%A2' OR T3.PRO_PERIOD LIKE '%B4' OR T3.PRO_PERIOD LIKE '%C6') AND T1.POOMS_PO_NUM LIKE 'W%'"
excuteSql = excuteSql & orderSql
Set rs = m_Conn.Execute(excuteSql)

xlSheet.[a2].CopyFromRecordset rs
xlSheet.Cells(1, 1).Select
xlSheet.Range("A2:M" & (rs.RecordCount + 1)).Borders.LineStyle = xlContinuous

'②------------------------------------------
Set xlSheet = xlBook.Sheets(SheetName2)
xlSheet.Activate

excuteSql = sql & " AND (T3.PRO_PERIOD LIKE '%A2' OR T3.PRO_PERIOD LIKE '%B4' OR T3.PRO_PERIOD LIKE '%C6') AND T1.POOMS_PO_NUM LIKE 'L%'"
excuteSql = excuteSql & orderSql

xlSheet.[a2].CopyFromRecordset rs
xlSheet.Cells(1, 1).Select
xlSheet.Range("A2:M" & (rs.RecordCount + 1)).Borders.LineStyle = xlContinuous


'①------------------------------------------
Set xlSheet = xlBook.Sheets(SheetName1)
xlSheet.Activate

excuteSql = sql & " AND T1.POOMS_PO_NUM LIKE 'P%'"
excuteSql = excuteSql & orderSql

Set rs = m_Conn.Execute(excuteSql)

xlSheet.[a2].CopyFromRecordset rs
xlSheet.Cells(1, 1).Select
xlSheet.Range("A2:M" & (rs.RecordCount + 1)).Borders.LineStyle = xlContinuous

'-------------------------------------------

strFileName = g_Path & Send_Dir & zsFileName & "_" & Format(Now, "YYMMDD") & File_ExtentionName
xlBook.SaveAs strFileName
xlBook.Close
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
Call WriteLog(Log_Prompt, "zanshou", I_MESSAGE6 & "    " & Now())

Exit Sub

ErrHandler:

xlBook.Close
' 结束EXCEL对象
xlApp.Quit
' 释放xlApp对象
Set xlApp = Nothing
Call WriteLog(Log_Error, "zanshou", Err.Description)

End Sub

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值