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

📄 hwod.cls

📁 制造业产供销与往来系统源码,包括进销存及全部控件!
💻 CLS
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "Hwod"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Option Explicit

Dim m_Hwodh As Hwodh

Dim m_Hwbm As Hwbm
Dim m_HwCk As HwCk
Dim m_HwDw As HwDw

Dim m_Hwod_Hwodhno As Double

Dim m_Hwod_HwBmCode As String
Dim m_Hwod_HwBmMc As String
Dim m_Hwod_HwBmno As Double

Dim m_Hwod_HwCkMc As String
Dim m_Hwod_HwCkno As Double

Dim m_Hwod_HwDwCode As String
Dim m_Hwod_HwDwNo As Double
Dim m_Hwod_HwDwConv As Double

Dim m_HwodQty As Double
Dim m_HwodPrice As Double
Dim m_HwodAmt As Double

Dim m_HwodMono As Double
Dim m_HwodMioNo As Double

Dim m_HwodBz As String

Dim m_HwodNo As Double

Dim m_HwodId As Integer
Dim m_HwodKey As Double

Private Sub Class_Initialize()
   m_HwodId = -1
End Sub

Public Property Get Name() As String
   Name = "Hwod"
End Property

Public Property Get HwodId() As Integer
   HwodId = m_HwodId
End Property

Public Property Let HwodId(vHwodId As Integer)
   m_HwodId = vHwodId
End Property

Public Property Get HwodKey() As Double
   HwodKey = m_HwodKey
End Property

Public Property Let HwodKey(vHwodKey As Double)
   m_HwodKey = vHwodKey
End Property

Public Property Get Hwodh() As Hwodh
   If m_Hwodh Is Nothing Then
      Set m_Hwodh = New Hwodh
      m_Hwodh.Requery "", m_Hwod_Hwodhno
   End If
   Set Hwodh = m_Hwodh
End Property

Public Property Set Hwodh(vHwodh As Hwodh)
   Set m_Hwodh = vHwodh
End Property

Public Property Get Hwbm() As Hwbm
   If m_Hwbm Is Nothing Then
      Set m_Hwbm = New Hwbm
      If m_Hwod_HwBmCode <> "" Then
         m_Hwbm.Requery m_Hwod_HwBmCode
      End If
   End If
   Set Hwbm = m_Hwbm
End Property

Public Property Get HwCk() As HwCk
   If m_HwCk Is Nothing Then
      Set m_HwCk = New HwCk
      If m_Hwod_HwCkMc <> "" Then
         m_HwCk.Requery m_Hwod_HwCkMc
      End If
   End If
   Set HwCk = m_HwCk
End Property

Public Property Get HwDw() As HwDw
   If m_HwDw Is Nothing Then
      Set m_HwDw = New HwDw
      If m_Hwod_HwDwCode <> "" Then
         m_HwDw.Requery m_Hwod_HwDwCode
      End If
   End If
   Set HwDw = m_HwDw
End Property

Public Property Get Hwod_Hwodhno() As Double
   Hwod_Hwodhno = m_Hwod_Hwodhno
End Property

Public Property Get Hwod_HwBmCode() As String
   Hwod_HwBmCode = m_Hwod_HwBmCode
End Property

Public Property Get Hwod_HwBmMc() As String
   Hwod_HwBmMc = m_Hwod_HwBmMc
End Property

Public Property Get Hwod_HwBmno() As Double
   Hwod_HwBmno = m_Hwod_HwBmno
End Property

Public Property Get Hwod_HwCkMc() As String
   Hwod_HwCkMc = m_Hwod_HwCkMc
End Property

Public Property Get Hwod_HwCkno() As Double
   Hwod_HwCkno = m_Hwod_HwCkno
End Property

Public Property Get Hwod_HwDwCode() As String
   Hwod_HwDwCode = m_Hwod_HwDwCode
End Property

Public Property Get Hwod_HwDwno() As Double
   Hwod_HwDwno = m_Hwod_HwDwNo
End Property

Public Property Get Hwod_HwDwConv() As Double
   Hwod_HwDwConv = m_Hwod_HwDwConv
End Property

Public Property Get HwodQty() As Double
   HwodQty = m_HwodQty
End Property

Public Property Get HwodPrice() As Double
   HwodPrice = m_HwodPrice
End Property

Public Property Get HwodAmt() As Double
   HwodAmt = m_HwodAmt
End Property

Public Property Get HwodBz() As String
   HwodBz = m_HwodBz
End Property

Public Property Get HwodMono() As Double
   HwodMono = m_HwodMono
End Property

Public Property Get HwodMioNo() As Double
   HwodMioNo = m_HwodMioNo
End Property

Public Property Get HwodNo() As Double
   HwodNo = m_HwodNo
End Property

Public Property Let Hwod_HwBmCode(vHwod_HwBmCode As String)
   If Trim(vHwod_HwBmCode) = "" Then
      Err.Raise vbObjectError + 1, , "货物编码不能为空!"
      Exit Property
   End If
   If m_Hwod_HwBmCode <> vHwod_HwBmCode Then
      If Hwbm.Requery(vHwod_HwBmCode) = -1 Then
         Err.Raise vbObjectError + 1, , "录入的货物编码不存在!"
         Exit Property
      End If
      m_Hwod_HwBmno = Hwbm.HwBmNo
      m_Hwod_HwBmMc = Hwbm.HwBmMc
      m_Hwod_HwDwCode = Hwbm.HwBm_HwDwCode
      m_Hwod_HwDwNo = Hwbm.HwBm_HwDwNo
      m_Hwod_HwDwConv = 1
   End If
   m_Hwod_HwBmCode = vHwod_HwBmCode
End Property

Public Property Let Hwod_HwCkMc(vHwod_HwCkMc As String)
   If Trim(vHwod_HwCkMc) = "" Then
      Err.Raise vbObjectError + 1, , "仓库不能为空!"
      Exit Property
   End If
   If m_Hwod_HwCkMc <> vHwod_HwCkMc Then
      If HwCk.Requery(vHwod_HwCkMc) = -1 Then
         Err.Raise vbObjectError + 1, , "录入的仓库不存在!"
         Exit Property
      End If
      m_Hwod_HwCkno = HwCk.HwCkNo
   End If
   m_Hwod_HwCkMc = vHwod_HwCkMc
End Property

Public Property Let Hwod_HwDwCode(vHwod_HwDwCode As String)
   If Trim(vHwod_HwDwCode) = "" Then
      Err.Raise vbObjectError + 1, , "计量单位不能为空!"
      Exit Property
   End If
   If m_Hwod_HwDwCode <> vHwod_HwDwCode Then
      If HwDw.Requery(vHwod_HwDwCode) = -1 Then
         Err.Raise vbObjectError + 1, , "录入的计量单位不存在!"
         Exit Property
      End If
      m_Hwod_HwDwNo = HwDw.HwDwNo
   End If
   m_Hwod_HwDwCode = vHwod_HwDwCode
End Property

Public Property Let Hwod_HwDwConv(vHwod_HwdwConv As Double)
   If vHwod_HwdwConv <= 0 Then
      Err.Raise vbObjectError + 1, , "换算系数必须大于零!"
      Exit Property
   End If
   m_Hwod_HwDwConv = vHwod_HwdwConv
End Property

Public Property Let HwodQty(vHwodQty As Double)
   If vHwodQty <= 0 Then
      Err.Raise vbObjectError + 1, , "数量必须大于零!"
      Exit Property
   End If
   m_HwodQty = vHwodQty
   m_HwodAmt = Val(Format(vHwodQty * m_HwodPrice, "##"))
End Property

Public Property Let HwodPrice(vHwodPrice As Double)
   If vHwodPrice < 0 Then
      Err.Raise vbObjectError + 1, , "单价不能小于零!"
      Exit Property
   End If
   m_HwodPrice = vHwodPrice
   m_HwodAmt = Val(Format(vHwodPrice * m_HwodQty, "##"))
End Property

Public Property Let HwodAmt(vHwodAmt As Double)
   If vHwodAmt < 0 Then
      Err.Raise vbObjectError + 1, , "金额不能小于零!"
      Exit Property
   End If
   m_HwodAmt = vHwodAmt
End Property

Public Property Let HwodBz(vHwodDBz As String)
   m_HwodBz = vHwodDBz
End Property

Public Sub Save()
   Dim Cmd As ADODB.Command
On Error GoTo Errorhandle
      
   Set Cmd = New ADODB.Command
   Set Cmd.ActiveConnection = gDbCommon.Conn
            
   If m_HwodId = -1 Then
      Cmd.CommandText = gPublicFunction.GetCallSPString("HwodREC_INSERT", 12)
      Cmd(0) = m_Hwodh.HwodhNo
      Cmd(1) = m_Hwod_HwBmno
      Cmd(2) = m_Hwod_HwDwNo
      Cmd(3) = m_Hwod_HwDwConv
      Cmd(4) = m_Hwod_HwCkno
      Cmd(5) = m_HwodQty
      Cmd(6) = m_HwodPrice
      Cmd(7) = m_HwodAmt
      Cmd(8) = m_HwodBz
      Cmd(9).Direction = adParamOutput 'HwodMono
      Cmd(10).Direction = adParamOutput 'HwodMono
      Cmd(11).Direction = adParamOutput    'HwodNo
   Else
      Cmd.CommandText = gPublicFunction.GetCallSPString("HwodREC_UPDATE", 9)
      Cmd(0) = m_HwodNo
      Cmd(1) = m_Hwod_HwBmno
      Cmd(2) = m_Hwod_HwDwNo
      Cmd(3) = m_Hwod_HwDwConv
      Cmd(4) = m_Hwod_HwCkno
      Cmd(5) = m_HwodQty
      Cmd(6) = m_HwodPrice
      Cmd(7) = m_HwodAmt
      Cmd(8) = m_HwodBz
   End If
   
   Cmd.Execute
   
   If m_HwodId = -1 Then
      m_HwodMono = Cmd(9)
      m_HwodMioNo = Cmd(10)
      m_HwodNo = Cmd(11)
      m_HwodId = 1
   End If
   
   Set Cmd = Nothing
   
Exit Sub
Errorhandle:
   Set Cmd = Nothing
   Err.Raise vbObjectError + 1, , gDbCommon.Conn.Errors(0)
End Sub

Public Sub Del()
   Dim Cmd As ADODB.Command
   
   gPublicFunction.CheckCanBeDelete "HWODREC", "HWODNO", CStr(m_HwodNo)
   
On Error GoTo Errorhandle

   Set Cmd = New ADODB.Command
   Set Cmd.ActiveConnection = gDbCommon.Conn
      
   Cmd.CommandText = "{CALL HwodREC_DELETE(?)}"
   Cmd(0) = m_HwodNo
   
   gDbCommon.Conn.BeginTrans
   Cmd.Execute
   If Hwodh.Hwods.Count = 1 Then
      Hwodh.Del 1
   End If
   gDbCommon.Conn.CommitTrans
   
   Set Cmd = Nothing
   
Exit Sub
Errorhandle:
   Set Cmd = Nothing
   gDbCommon.Conn.RollbackTrans
   Err.Raise vbObjectError + 1, , gDbCommon.Conn.Errors(0)
End Sub

Public Function Requery(vHwodNo As Double) As Integer
   Dim mRs As DbRs
   Dim mSqlStr As String
On Error GoTo Errorhandle
   Requery = -1
   
   Set mRs = New DbRs
   
   mSqlStr = "SELECT Hwod_HwodHNO,Hwod_HwBmCode=COALESCE((SELECT HwBmCode FROM HWBMREC WHERE HWBMNO=Hwod_HWBMNO),''),Hwod_HwBmMc=COALESCE((SELECT HwBmMc FROM HWBMREC WHERE HWBMNO=Hwod_HWBMNO),''),Hwod_HWBMNO,"
   mSqlStr = mSqlStr & "Hwod_HwCkMc=COALESCE((SELECT HwCkMc FROM HWCKREC WHERE HWCKNO=Hwod_HWCKNO),''),Hwod_HWCKNO,"
   mSqlStr = mSqlStr & "Hwod_HwDwCode=COALESCE((SELECT HWDWCode FROM HWDWREC WHERE HWDWNO=Hwod_HWDWNO),''),Hwod_HWDWNO,Hwod_HWDWCONV,"
   mSqlStr = mSqlStr & "HwodQTY,HwodPRICE,HwodAMT,HwodBZ,HwodMono,HwodMIONO,HwodNO FROM HwodREC WHERE HwodNO=" & CStr(vHwodNo)
   
   mRs.Fillbydb mSqlStr
   
   If Not mRs.EOF Then
      BatchLet mRs!Hwod_Hwodhno, mRs!Hwod_HwBmCode, mRs!Hwod_HwBmMc, mRs!Hwod_HwBmno, _
               mRs!Hwod_HwCkMc, mRs!Hwod_HwCkno, mRs!Hwod_HwDwCode, mRs!Hwod_HwDwno, mRs!Hwod_HwDwConv, _
               mRs!HwodQty, mRs!HwodPrice, mRs!HwodAmt, _
               mRs!HwodBz, mRs!HwodMono, mRs!HwodMioNo, mRs!HwodNo
   End If
   Set mRs = Nothing
   
Exit Function
Errorhandle:
   Set mRs = Nothing
   Err.Raise vbObjectError + 1, , Err.Description
End Function

Public Sub BatchLet(ParamArray Properties() As Variant)
   
   m_Hwod_Hwodhno = Properties(0)
   m_Hwod_HwBmCode = Properties(1)
   m_Hwod_HwBmMc = Properties(2)
   m_Hwod_HwBmno = Properties(3)
   m_Hwod_HwCkMc = Properties(4)
   m_Hwod_HwCkno = Properties(5)
   m_Hwod_HwDwCode = Properties(6)
   m_Hwod_HwDwNo = Properties(7)
   m_Hwod_HwDwConv = Properties(8)
   m_HwodQty = Properties(9)
   m_HwodPrice = Properties(10)
   m_HwodAmt = Properties(11)
   m_HwodBz = Properties(12)
   m_HwodMono = Properties(13)
   m_HwodMioNo = Properties(14)
   m_HwodNo = Properties(15)

   m_HwodId = 1

End Sub





⌨️ 快捷键说明

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