⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 -

📁 VB开发的ERP系统
💻
📖 第 1 页 / 共 4 页
字号:
        .Fields("AccCode") = RecTemp.Fields("AccCode")                                                      '应付票据科目
        .Fields("AccCodeArAp") = RecTemp.Fields("AccCodeArAp")                                              '应付科目
        .Fields("ForeignCurrCode") = RecTemp.Fields("ForeignCurrCode")                                      '原币编码
        .Fields("AccRate") = RecTemp.Fields("AccRate")                                                      '记帐汇率
        .Fields("YbSsJe") = RecTemp.Fields("YbSsJe")                                                        '原币金额
        .Fields("BbSsje") = RecTemp.Fields("BbSsJe")                                                        '本币金额
        .Fields("DeptCode") = RecTemp.Fields("DeptCode")                                                    '部门
        .Fields("PersonCode") = RecTemp.Fields("PersonCode")                                                '经办人
        .Fields("Digest") = Trim(RecTemp.Fields("Digest")) & "应付票据" & Trim(RecTemp.Fields("NoteCode"))  '摘要
        .Fields("Maker") = RecTemp.Fields("Maker")                                                          '制单人
        .Fields("SourceBillCode") = RecTemp.Fields("NoteCode")                                              '应付票据编码
        .Fields("Checker") = Xtczy                                                                          '审核人
        .Fields("IfBuildVouch") = True                  '付款单中不必再做凭证
        .Update
    End With
    
     '20-登记应收/应付明细帐
     
     With Rec_AccList
        If .State = 1 Then .Close
        .Open "Select * From RP_AccList Where 1=2", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
        .AddNew
            .Fields("RPFlag") = RecTemp.Fields("RPFlag")                       '应收应付标识
            .Fields("PSCode") = RecTemp.Fields("PSCode")                       '往来单位编码
            .Fields("KJYear") = RecTemp.Fields("KJYear")                       '会计年度
            .Fields("Period") = RecTemp.Fields("Period")                       '会计期间
            .Fields("BillItemCode") = "90"                                     '单据类型
            .Fields("BillID") = CloseBillId                                    '单据ID
            .Fields("BillCode") = CloseBillCode                                '单据编码
            .Fields("BillDate") = RecTemp.Fields("BillDate")                   '单据日期
            .Fields("Digest") = Trim(RecTemp.Fields("Digest")) & "应付票据" & Trim(RecTemp.Fields("NoteCode")) '摘要
            .Fields("BbSsje") = RecTemp.Fields("BbSsJe")                       '收回/付款本币金额
            .Fields("ForeignCurrCode") = RecTemp.Fields("ForeignCurrCode")     '原币编码
            .Fields("AccRate") = RecTemp.Fields("AccRate") + 0                 '记帐汇率
            .Fields("YbSsje") = RecTemp.Fields("YbSsJe")                       '原币收回/付款金额
            .Fields("DeptCode") = RecTemp.Fields("DeptCode")                   '部门
            .Fields("PersonCode") = RecTemp.Fields("PersonCode")               '经办人
            .Fields("AccCode") = RecTemp.Fields("AccCode")                     '应付票据科目编码
            .Fields("AccCodeArAp") = RecTemp.Fields("AccCodeArAp")             '应付科目编码
            .Fields("Maker") = RecTemp.Fields("Maker")                         '制单人
            .Fields("Checker") = RecTemp.Fields("Checker")                     '审核人
            .Fields("IfBuildVouch") = True                                     '在不必在明细帐中做凭证
        .Update
     End With
     
     '30-登记应收/应付总帐
     
     Str_PSCode = Trim(RecTemp.Fields("PSCode") & "")
     Str_DeptCode = Trim(RecTemp.Fields("DeptCode") & "")
     Str_PersonCode = Trim(RecTemp.Fields("PersonCode") & "")
     Str_ForeignCurrCode = Trim(RecTemp.Fields("ForeignCurrCode") & "")
     
     With Rec_AccSum
         If .State = 1 Then .Close
        .Open "Select * From RP_AccSum Where RpFlag='" & Trim(RecTemp.Fields("RPFlag")) & "' And PSCode='" & Str_PSCode & _
        "' And DeptCode='" & Str_DeptCode & "' And PersonCode='" & Str_PersonCode & "' And ForeignCurrCode='" & Str_ForeignCurrCode & "' And kjYear=" & Int_Dqyear & " And Period=" & Int_DqPeriod, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
        
        If Not Rec_AccSum.EOF Then
           .Fields("YbSsje") = .Fields("YbSsje") + RecTemp.Fields("YbSsje")                       '本期收回/付款原币金额
           .Fields("YbQmye") = .Fields("YbQcye") + .Fields("YbYsje") - .Fields("YbSsje")          '本期期末原币余额
           .Fields("BbSsje") = .Fields("BbSsje") + RecTemp.Fields("BbSsje")                       '本期收回/付款本币金额
           .Fields("BbQmye") = .Fields("BbQcye") + .Fields("BbYsje") - .Fields("BbSsje")          '本期期末本币余额
           .Update
        Else
           .AddNew
           .Fields("RPFlag") = RecTemp.Fields("RPFlag")                                           '应收应付标识
           .Fields("PSCode") = Str_PSCode                                                         '往来单位编码
           .Fields("DeptCode") = Str_DeptCode                                                     '部门编码
           .Fields("PersonCode") = Str_PersonCode                                                 '个人编码
           .Fields("ForeignCurrCode") = Str_ForeignCurrCode                                       '原币编码
           .Fields("KJYear") = RecTemp.Fields("KJYear")                                           '会计年度
           .Fields("Period") = RecTemp.Fields("Period")                                           '会计期间
           .Fields("YbSsje") = RecTemp.Fields("YbSsje") + 0                                       '本期收回/付款原币金额
           .Fields("YbQmye") = -RecTemp.Fields("YbSsje")                                          '本期期末原币余额
           .Fields("BbSsje") = RecTemp.Fields("BbSsje") + 0                                       '本期收回/付款本币金额
           .Fields("BbQmye") = -RecTemp.Fields("BbSsje")                                          '本期期末本币余额
           .Update
    
         End If
    End With
    
  Cw_DataEnvi.DataConnect.CommitTrans
  
  Fun_BookSumNote = True
  
  Exit Function

Swcwcl:
     Cw_DataEnvi.DataConnect.RollbackTrans
     Tsxx = "审核单据过程中出现未知错误,程序自动恢复审核前状态!"
     Call Xtxxts(Tsxx, 0, 1)
     Exit Function

End Function

'=======================================采购发票过帐======================================'
Public Function Fun_AccInvoiceBill(Lng_BillID As Long, Int_Dqyear, Int_DqPeriod) As Boolean      '采购发票过帐
  Dim RecTemp As New ADODB.Recordset         '临时使用动态集
  Dim Rec_AccList As New ADODB.Recordset     '应收应付明细帐动态集
  Dim Rec_AccSum As New ADODB.Recordset      '应收应付总帐动态集
  Dim Str_PSCode As String                   '往来单位编码
  Dim Str_DeptCode As String                 '部门编码
  Dim Str_PersonCode As String               '职员编码
  Dim Str_ForeignCurrCode As String          '原币编码
  Dim Tsxx As String                         '系统信息提示
  
  Fun_AccInvoiceBill = False
  
  On Error GoTo Swcwcl

  Cw_DataEnvi.DataConnect.BeginTrans
  
     Set RecTemp = Cw_DataEnvi.DataConnect.Execute("Select * From Cg_InvoiceMain Where ApBookFlag=0 And Checker<>'' And InvoiceMainID=" & Lng_BillID)
     If RecTemp.EOF Then
        Fun_AccInvoiceBill = True
        Cw_DataEnvi.DataConnect.RollbackTrans
        Exit Function
     End If
     
     '对采购发票写过帐标识
     Cw_DataEnvi.DataConnect.Execute ("Update Cg_InvoiceMain Set ApBookFlag=1 Where InvoiceMainID=" & Lng_BillID)
     
     '登记应收/应付明细帐
     
     With Rec_AccList
        If .State = 1 Then .Close
        .Open "Select * From RP_AccList Where 1=2", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
        .AddNew
            .Fields("RPFlag") = "AP"                                           '应收应付标识
            .Fields("PSCode") = RecTemp.Fields("SupplierCode")                 '往来单位编码
            .Fields("KJYear") = Int_Dqyear                                     '过帐会计年度
            .Fields("Period") = Int_DqPeriod                                   '过帐会计期间
            If RecTemp.Fields("InvoiceSort") = "0" Then
               .Fields("BillItemCode") = "70"                                  '单据类型(采购普通发票)
            Else
               .Fields("BillItemCode") = "71"                                  '单据类型(采购专用发票)
            End If
            .Fields("BillID") = RecTemp.Fields("InvoiceMainID")                '单据ID
            .Fields("BillCode") = RecTemp.Fields("InvoiceNum")                 '单据编码
            .Fields("BillDate") = Xtrq                                         '单据日期(过帐日期)
            .Fields("Digest") = RecTemp.Fields("Remark")                       '摘要
            .Fields("BbYsje") = RecTemp.Fields("NowValue")                     '应收/应付本币金额
            .Fields("ForeignCurrCode") = RecTemp.Fields("ForeignCurrCode")     '原币编码
            .Fields("AccRate") = RecTemp.Fields("AccRate") + 0                 '记帐汇率
            .Fields("YbYsje") = RecTemp.Fields("NowValueFor")                  '原币应收/应付金额
            .Fields("DeptCode") = Trim(RecTemp.Fields("DeptCode") & "")        '部门
            .Fields("PersonCode") = Trim(RecTemp.Fields("PersonCode") & "")    '业务员
            .Fields("AccCodeArAp") = RecTemp.Fields("ApAccCode")               '应付科目
            .Fields("Maker") = RecTemp.Fields("Maker")                         '制单
            .Fields("Checker") = RecTemp.Fields("Checker")                     '审核
        
        .Update
     End With
     
     '登记应收/应付总帐
     
     Str_PSCode = Trim(RecTemp.Fields("SupplierCode") & "")
     Str_DeptCode = Trim(RecTemp.Fields("DeptCode") & "")
     Str_PersonCode = Trim(RecTemp.Fields("PersonCode") & "")
     Str_ForeignCurrCode = Trim(RecTemp.Fields("ForeignCurrCode") & "")
     
     With Rec_AccSum
         If .State = 1 Then .Close
        .Open "Select * From RP_AccSum Where RpFlag='AP' And PSCode='" & Str_PSCode & _
        "' And DeptCode='" & Str_DeptCode & "' And PersonCode='" & Str_PersonCode & "' And ForeignCurrCode='" & Str_ForeignCurrCode & "' And kjYear=" & Int_Dqyear & " And Period=" & Int_DqPeriod, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
        
        If Not Rec_AccSum.EOF Then
           .Fields("YbYsje") = .Fields("YbYsje") + RecTemp.Fields("NowValueFor")                  '本期应收/应付原币金额
           .Fields("YbQmye") = .Fields("YbQcye") + .Fields("YbYsje") - .Fields("YbSsje")          '本期期末原币余额
           .Fields("BbYsje") = .Fields("BbYsje") + RecTemp.Fields("NowValue")                     '本期应收/应付本币金额
           .Fields("BbQmye") = .Fields("BbQcye") + .Fields("BbYsje") - .Fields("BbSsje")          '本期期末本币余额
           .Update
        Else
           .AddNew
           .Fields("RPFlag") = "AP"                                                               '应收应付标识
           .Fields("PSCode") = Str_PSCode                                                         '往来单位编码
           .Fields("DeptCode") = Str_DeptCode                                                     '部门编码
           .Fields("PersonCode") = Str_PersonCode                                                 '个人编码
           .Fields("ForeignCurrCode") = Str_ForeignCurrCode                                       '原币编码
           .Fields("KJYear") = Int_Dqyear                                                         '会计年度
           .Fields("Period") = Int_DqPeriod                                                       '会计期间
           .Fields("YbYsje") = RecTemp.Fields("NowValueFor") + 0                                  '本期应收/应付原币金额
           .Fields("YbQmye") = RecTemp.Fields("NowValueFor")                                      '本期期末原币余额
           .Fields("BbYsje") = RecTemp.Fields("NowValue") + 0                                     '本期应收/应付本币金额
           .Fields("BbQmye") = RecTemp.Fields("NowValue")                                         '本期期末本币余额
           .Update
    
         End If
     End With
    
  Cw_DataEnvi.DataConnect.CommitTrans
  
  Fun_AccInvoiceBill = True
  
  Exit Function

Swcwcl:
     Cw_DataEnvi.DataConnect.RollbackTrans
     Tsxx = "发票过帐过程中出现未知错误,程序自动恢复过帐前状态!"
     Call Xtxxts(Tsxx, 0, 1)
     Exit Function
  
End Function

Public Function AddImageCombo(Combote As ImageCombo, AddKey As String, AddText As String) '补充填充列表框(ImageCombo)

  '函数参数:列表框(ImageCombo),填充索引(AddKey),填充内容(AddText)

  Dim ci As ComboItem
  
  Set ci = Combote.ComboItems.Add(, AddKey, AddText)
  
End Function

'***********************应付帐款会计科目*********************
Public Function Fun_ApKjKm(KmType As String) As String               '读取应付帐款科目
    
    'KmType 应付帐款对应的编码
    Dim RecTemp As New ADODB.Recordset              '临时查询动态集
    Dim StrTemp As String                           '连接字符串
    
    StrTemp = " Select CCode From RP_InputCode Where ItemCode='" & KmType & "'"
    Set RecTemp = Cw_DataEnvi.DataConnect.Execute(StrTemp)
    With RecTemp
        If Not .EOF Then
            Fun_ApKjKm = Trim(.Fields("CCode"))
        Else
            Fun_ApKjKm = ""
        End If
    End With

End Function



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -