亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? bos_wipebill_plugins.cls

?? 完成報銷系統(tǒng)的業(yè)務(wù)流程;在報銷系統(tǒng)中達到預算控制目的;將歷史數(shù)據(jù)導入金蝶賬套生成歷史備查數(shù)據(jù)。
?? CLS
?? 第 1 頁 / 共 2 頁
字號:
     '-------------------------------------------------------------------
    '判斷
    '3 判斷當前金額有沒有超過預算金額
    '-------------------------------------------------------------------
    Dim lAmt As Currency  '借款金額
    Dim lbudget As Currency '預算金額
    Dim lUseAmt As Currency '已用預處金額
    Dim lUseAmt1 As Currency
    Dim lUseAmt2 As Currency
    Dim lUseAmt3 As Currency
    Dim lbudgetID As Long  '預算方案ID
    Dim lDepId As Long  '部門ID
    Dim lDetailId As Long
    Dim lAcctId As Long '會計科目
    Dim lBudgetAccId As Long  '預算科目
    Dim sAccIdDepId As String '預算科目對應(yīng)會計科目和部門 和字符串
    Dim lBudgetCon As Long '預算控制 0本期預算 1累計預算 2本年預算 3方案預算  4季度預算 5半年預算
    Dim sConBound As String '預算控制范圍的字符串
    Dim sConBound1 As String
    Dim rs As New ADODB.Recordset
    Dim sSql As String
    Dim iYear As Integer
    Dim iPeriod As Integer
    Dim i As Integer, j As Integer
    Dim sFid_src As String '源單編號
    Dim sErr As String
    
    
    On Error GoTo ERR
    With m_BillInterface
         '取對應(yīng)預算方案
        lbudgetID = lBudgetProjectID
        
        '循環(huán)分錄中的所有列
        i = 1
beg:        While i <= .Data("Page2").Size
                '對應(yīng)部門,
                lDepId = .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FDivideDep"))("FFLD")
                
                '取借款金額的值
                If iType = 1 Then
                    lAmt = 0
                Else
                    lAmt = .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FloanAmt"))("FFLD")
                End If
    
                '會計科目--報銷科目=借款科目(如果有借款存在)
                lAcctId = .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FWipeItem"))("FFLD")

    
                '2根據(jù)財務(wù)科目內(nèi)碼取預算科目的內(nèi)碼 lBudgetAccId
                sSql = "select FBudgetItem from t_EP_ER_AccToMgAccEntry1 t1  " & _
                                " inner join t_EP_ER_AccToMgAcc t2 on t1.fid=t2.fid " & _
                                " where FAcctID = '" & lAcctId & "' and FDepID  ='" & lDepId & "'"
                 Set rs = .K3Lib.GetData(sSql)
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    lBudgetAccId = rs("FBudgetItem")
                Else
                    sErr = sErr & "您錄入第" & CStr(i) & "列中的 “會計科目”:" & _
                       CStr(.Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FWipeItem"))("FFND")) & "-" & CStr(.Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FWipeItem"))("FDSP")) & _
                        " 和 “部門”" & .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FDivideDep"))("FFND") & "-" & .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FDivideDep"))("FDSP") & _
                        " 沒有對應(yīng)預算科目!"
                    compareNum = False
                    sRet = sErr
                    Exit Function
                End If
            
                If rs.State = adStateOpen Then rs.Close
                            
                '取預算范圍,是月還是季還是年,沒有的話,默認為季度預算
                Set rs = .K3Lib.GetData("select FValue from T_SystemProfile where FCategory='mg' and FKey='BudGet_Con'")
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    lBudgetCon = rs("FValue")
                Else
                    lBudgetCon = 4
                End If
                
                If rs.State = adStateOpen Then rs.Close
                       
                '3 根據(jù)預算類型進行條件拼寫
                iYear = Left(.K3Lib.GetData("select  convert(varchar(19),getdate(),21)  as date")("Date"), 4)
                iPeriod = Mid(.K3Lib.GetData("select  convert(varchar(19),getdate(),21) as date")("Date"), 6, 2)
                Select Case lBudgetCon '0本期預算 1累計預算 2本年預算 3方案預算  4季度預算 5半年預算
                    Case 0
                        sConBound = "FYear= " & iYear & " and FPeriod <=" & iPeriod
                        sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='" & CStr(iPeriod) & "'"
                    Case 1
                    Case 2
                        sConBound = "FYear= " & iYear
                        sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)= '" & CStr(iYear) & "'"
                    Case 3
                    Case 4
                        If iPeriod <= 3 Then
                            sConBound = "FYear= " & iYear & " and FPeriod<=3 " ' in (1,2,3)"
                            sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='03'"
                        ElseIf iPeriod >= 4 And iPeriod <= 6 Then
                            sConBound = "FYear= " & iYear & " and FPeriod <=6 " 'in (4,5,6)"
                            sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='06'"
                        ElseIf iPeriod >= 7 And iPeriod <= 9 Then
                            sConBound = "FYear= " & iYear & " and FPeriod <=9 " 'in (7,8,9)"
                            sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='09'"
                        ElseIf iPeriod >= 10 And iPeriod <= 12 Then
                            sConBound = "FYear= " & iYear & " and FPeriod <=12 " 'in (10,11,12)"
                            sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='12'"
                        End If
                        
                    Case 5
                        If iPeriod < 7 Then
                            sConBound = "FYear= " & iYear & " and FPeriod <=6" 'in (1,2,3,4,5,6)"
                            sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='06'"
                        ElseIf iPeriod >= 7 Then
                            sConBound = "FYear= " & iYear & " and FPeriod <=12" ' in (7,8,9,10,11,12)"
                            sConBound1 = " substring(convert(varchar(7),FBillDate,21),1,4)='" & CStr(iYear) & "' and substring(convert(varchar(7),FBillDate,21),6,2)<='12'"
                        End If
                End Select
                '本年的到目前為止的預算
                sSql = "SELECT sum(case when Acct.FDC=1 then isnull(Budd.FDebitMoney,0) else IsNull(Budd.FCreditMoney,0) end) as FBudMoney" & _
                        " FROM t_MgBudGetDetail As BudD" & _
                        " Inner join t_MgBudGet as Bud on Bud.FBudGetID= Budd.FBudgetID" & _
                        " Inner join t_MgBudgetSet As BudSet On Bud.FProjectID=BudSet.FProjectID" & _
                        " Inner Join t_MgAcct as Acct ON  Acct.FMgAcctID=Bud.FMgAcctID" & _
                        " Where BudSet.FExec = 1 And Bud.FItemID = 0 And Acct.FDelete = 0 And Bud.FCyID = 1" & _
                        " And Acct.FMgAcctID = '" & lBudgetAccId & "'"
                sSql = sSql & " and " & sConBound
                Set rs = .K3Lib.GetData(sSql)
                
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    lbudget = CNulls(rs("FBudMoney"), 0)
                Else
                    lbudget = 0
                End If
                If rs.State = adStateOpen Then rs.Close
                '計算的到目前為止的本年調(diào)整金額
                sSql = "SELECT isnull(sum(case when Acct.FDC=1 then isnull(BudModD.FDebitMoney,0) else IsNull(BudModD.FCreditMoney,0) end),0)  as FBudMoney " & _
                        " FROM t_MgBudModifyDetail As BudModD" & _
                        " Inner join t_MgBudGetModify as BudMod on BudMod.FModifyid= BudModD.FModifyid" & _
                        " inner join T_MgBudGet as Bud on Bud.FBudGetID =BudMod.FBudGetID" & _
                        " Inner join t_MgBudgetSet As BudSet On Bud.FProjectID=BudSet.FProjectID" & _
                        " Inner Join t_MgAcct as Acct ON  Acct.FMgAcctID=Bud.FMgAcctID" & _
                        " Where BudSet.FExec = 1 And Bud.FItemID = 0 And Acct.FDelete = 0 And Bud.FCyID = 1" & _
                        " And  Acct.FMgAcctID = '" & lBudgetAccId & "'"
                sSql = sSql & " and " & sConBound
                Set rs = .K3Lib.GetData(sSql)
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    lbudget = lbudget + CCur(CNulls(rs("FBudMoney"), 0))
                Else
                    lbudget = 0
                End If
                If rs.State = adStateOpen Then rs.Close
    
                '計算預算科目的已經(jīng)用金額-本年
                '取對應(yīng)預算科目所對應(yīng)的全部 --會計科目
                sSql = "select * from t_EP_ER_AccToMgAccEntry1 t1  " & _
                                " inner join t_EP_ER_AccToMgAcc t2 on t1.fid=t2.fid " & _
                                " where FBudgetItem ='" & lBudgetAccId & "'"
                 Set rs = .K3Lib.GetData(sSql)
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    j = 1
                    sAccIdDepId = ""
                    rs.MoveFirst
                    While j <= rs.RecordCount
                        If sAccIdDepId = "" Then
                            sAccIdDepId = sAccIdDepId & " (FReqDept= '" & CStr(rs("FDepID")) & "' and FLoanItem='" & CStr(rs("FAcctID")) & "')"
                        Else
                            sAccIdDepId = sAccIdDepId & " or " & " (FReqDept= '" & CStr(rs("FDepID")) & "' and FLoanItem='" & CStr(rs("FAcctID")) & "')"
                        End If
                        j = j + 1
                        rs.MoveNext
                    Wend
                Else
            
                End If
                '1. 借款申請的金額,只取沒有與報銷單勾銷的
                sFid_src = ""
                If Trim(.Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FID_SRC"))("FFLD")) <> "" Then
                    sFid_src = " AND t1.fid= " & .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FID_SRC"))("FFLD")
                End If
                 sSql = " select isnull(sum(FCtlAmt),0)   as FCtlAmt from t_EP_ER_Loan t1 " & _
                        " LEFT JOIN T_ITEM T2 ON T2.FItemClassid=2 and t1.FReqDept=t2.fitemid  " & _
                        " where Fclose=0  " & _
                        " and  " & sConBound1 & sFid_src
                If sAccIdDepId <> "" Then sSql = sSql & " AND (" & sAccIdDepId & ")"
                Set rs = .K3Lib.GetData(sSql)
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    lUseAmt1 = CNulls(rs("FCtlAmt"), 0)
                Else
                    lUseAmt1 = 0
                End If
                If rs.State = adStateOpen Then rs.Close
                '2. 報銷的金額
                sSql = "select ISNULL(sum(t1.FWipeAmt),0) as FWipeAmt from t_BOSWipeOffEntry1 t1 " & _
                        " INNER JOIN t_BOSWipeOff t2 on t1.Fid=t2.Fid " & _
                        " AND " & sConBound1 & " AND T2.FID <> " & .CurBillID
                If sAccIdDepId <> "" Then
                    sAccIdDepId = Replace(sAccIdDepId, "FReqDept", "FDivideDep")
                    sAccIdDepId = Replace(sAccIdDepId, "FLoanItem", "FWipeItem")
                    sSql = sSql & " AND (" & sAccIdDepId & ")"
                End If
                Set rs = .K3Lib.GetData(sSql)
                If rs.State = adStateOpen And rs.RecordCount > 0 Then
                    lUseAmt2 = CNulls(rs("FWipeAmt"), 0)
                Else
                    lUseAmt2 = 0
                End If
                If rs.State = adStateOpen Then rs.Close
                
                '3計算本次的該項目的報銷金額 .Data("Page2").Item(i)(.DataSrv.TableInfo("map")("FWipeAmt"))("FFLD")
                lUseAmt3 = 0
                For j = 1 To .Data("page2").Size
                
                    If .Data("Page2").Item(j)(.DataSrv.TableInfo("map")("FWipeITEM"))("FFLD") = lAcctId _
                        And .Data("Page2").Item(j)(.DataSrv.TableInfo("map")("FDivideDep"))("FFLD") = lDepId Then
                        lUseAmt3 = lUseAmt3 + .Data("Page2").Item(j)(.DataSrv.TableInfo("map")("FWipeAmt"))("FFLD")
                    End If
                Next j
                '借款金額 加上報銷金額 加上本次報銷金額
                If iType <> 1 Then
                    lUseAmt = lUseAmt1 + lUseAmt2 + lUseAmt3
                Else
                    lUseAmt = lUseAmt1 + lUseAmt2
                End If
                '判斷余額是否大于借款金額
                If lbudget < lUseAmt Then
                    '計算余額
                    lBalanceAmt = lbudget - lUseAmt1 - lUseAmt2
                    sErr = sErr & "報銷項目: '" & .GetFieldValue("FWipeItem", i, Enu_ValueType_FFND) & "-" & .GetFieldValue("FWipeItem", i, Enu_ValueType_FDSP) & "',預算余額:" & lBalanceAmt & ",當前報銷金額:" & lUseAmt3 & "已經(jīng)超過預算金額!" & vbCrLf
                End If
                i = i + 1
       Wend
        If sErr <> "" Then
            compareNum = False
            sRet = sErr
        Else
            compareNum = True
        End If
       
    End With
    Set rs = Nothing
    Exit Function
ERR:
    Set rs = Nothing
    compareNum = False
    lBalanceAmt = 0
    sErr = ERR.Number & ERR.Description
    End Function
    


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久66热偷产精品| 亚洲欧洲日韩在线| 水野朝阳av一区二区三区| 欧美亚洲国产一区二区三区va| 日韩毛片在线免费观看| 色先锋资源久久综合| 亚洲精品国产无天堂网2021 | 一本到一区二区三区| 亚洲免费观看高清完整版在线观看| 91年精品国产| 亚洲观看高清完整版在线观看 | 亚洲一区二区在线免费观看视频| 欧美少妇xxx| 免费观看成人av| 久久蜜臀精品av| eeuss鲁片一区二区三区| 亚洲精品免费一二三区| 91精品国产综合久久福利软件| 久久成人免费网站| 国产精品乱人伦| 色欧美乱欧美15图片| 日韩国产欧美在线播放| 国产亚洲成年网址在线观看| 99re这里只有精品首页| 午夜成人在线视频| 久久精品亚洲国产奇米99| 91小视频在线| 日本vs亚洲vs韩国一区三区| 国产欧美综合色| 精品视频在线视频| 国产一区二区影院| 一区二区三区久久| www激情久久| 欧美午夜精品久久久| 国产一区二区剧情av在线| 亚洲理论在线观看| 精品日韩一区二区三区| 91性感美女视频| 国产美女主播视频一区| 亚洲成人tv网| 国产精品免费aⅴ片在线观看| 欧美高清视频不卡网| 成人国产精品免费观看动漫| 首页亚洲欧美制服丝腿| 《视频一区视频二区| 日韩精品一区二区在线| 欧洲一区二区三区在线| 国产盗摄一区二区三区| 午夜欧美2019年伦理| 综合自拍亚洲综合图不卡区| 精品国产乱码久久久久久图片| 一本一本久久a久久精品综合麻豆| 久久99国产乱子伦精品免费| 亚洲综合色婷婷| 国产精品初高中害羞小美女文| 精品少妇一区二区三区在线播放| 色狠狠色狠狠综合| 99这里只有久久精品视频| 精彩视频一区二区| 天堂成人免费av电影一区| 自拍偷拍亚洲激情| 日本一区二区免费在线观看视频 | 欧美极品美女视频| 日韩精品一区二区三区视频在线观看| 色香蕉久久蜜桃| 成人av网在线| 粉嫩在线一区二区三区视频| 极品美女销魂一区二区三区 | 91丨porny丨蝌蚪视频| 国产精品影视网| 久久精品国产精品亚洲精品| 午夜精品久久久久久久久| 一区二区三区在线播放| 亚洲三级在线免费观看| 国产精品动漫网站| 亚洲色图在线视频| 亚洲色图在线看| 伊人性伊人情综合网| 亚洲欧美色图小说| 悠悠色在线精品| 亚洲一区在线免费观看| 亚洲国产精品人人做人人爽| 一区二区三区**美女毛片| 亚洲特级片在线| 亚洲精品乱码久久久久| 亚洲永久免费av| 图片区小说区国产精品视频| 日韩精品成人一区二区在线| 麻豆中文一区二区| 狠狠色丁香久久婷婷综| 国产精品18久久久久| 成人免费视频国产在线观看| 成人久久18免费网站麻豆| 99热精品国产| 欧美在线看片a免费观看| 欧美日韩日日夜夜| 日韩精品在线一区| 久久精品在线观看| 亚洲色图色小说| 天天综合网天天综合色| 麻豆精品视频在线观看免费| 国产一区二区三区四| 91麻豆国产福利精品| 欧美日韩国产欧美日美国产精品| 56国语精品自产拍在线观看| 2020国产精品久久精品美国| 亚洲国产精品成人综合| 一区二区三区**美女毛片| 日韩中文字幕麻豆| 国产成人在线观看免费网站| 91玉足脚交白嫩脚丫在线播放| 欧美色综合久久| 久久蜜臀精品av| 伊人开心综合网| 另类欧美日韩国产在线| 99re66热这里只有精品3直播| 欧美在线小视频| 久久久99久久| 亚洲成a天堂v人片| 国产成人啪午夜精品网站男同| 色香色香欲天天天影视综合网 | 日韩限制级电影在线观看| 久久久国产精品午夜一区ai换脸 | 亚洲免费av高清| 久热成人在线视频| 色综合一区二区三区| 日韩精品一区二区三区swag| 亚洲天堂免费看| 黄色日韩网站视频| 在线观看网站黄不卡| 久久久久久久久久久黄色| 亚洲自拍偷拍综合| 国产99久久久精品| 91精品国产高清一区二区三区蜜臀 | 欧美精品一级二级| 国产欧美一区二区三区网站| 亚洲国产cao| 91麻豆免费观看| 久久精品亚洲国产奇米99| 日韩和欧美的一区| 91麻豆精品秘密| 欧美极品aⅴ影院| 麻豆高清免费国产一区| 欧美日韩中文精品| 亚洲三级在线免费| 成人丝袜18视频在线观看| 精品成a人在线观看| 日韩不卡手机在线v区| 91女人视频在线观看| 久久精品人人做人人综合| 免费观看在线综合色| 欧美日韩高清一区二区不卡| 亚洲美女屁股眼交3| 岛国精品在线观看| 国产午夜精品久久久久久久 | 蜜臀91精品一区二区三区| 欧美日韩在线播放三区| 最新中文字幕一区二区三区 | 亚洲国产精品高清| 国产剧情一区二区三区| 欧美一级久久久久久久大片| 亚洲第一电影网| 精品污污网站免费看| 亚洲综合成人在线视频| 在线亚洲人成电影网站色www| 国产精品第五页| 97精品久久久久中文字幕| 国产精品二区一区二区aⅴ污介绍| 国产69精品久久99不卡| 中文字幕国产一区| 成人午夜碰碰视频| 国产精品电影一区二区| 91在线视频免费观看| 亚洲精品久久久久久国产精华液| 91在线国产观看| 一区二区三区在线视频观看| 在线观看91精品国产入口| 亚洲国产欧美一区二区三区丁香婷| 91麻豆免费在线观看| 一区二区日韩av| 欧美精品免费视频| 男女激情视频一区| 久久嫩草精品久久久精品| 成人综合婷婷国产精品久久蜜臀| 国产精品欧美一区二区三区| 91玉足脚交白嫩脚丫在线播放| 亚洲精品va在线观看| 欧美日韩亚洲综合| 美女免费视频一区| 国产欧美一区二区精品仙草咪| 成人午夜私人影院| 亚洲人午夜精品天堂一二香蕉| 色网综合在线观看| 日韩avvvv在线播放| 欧美大肚乱孕交hd孕妇| 成人永久看片免费视频天堂| 亚洲黄一区二区三区| 日韩一区二区三区高清免费看看| 国产美女一区二区三区| 亚洲欧美aⅴ...|