cgshdap.cls

来自「制造业产供销与往来系统源码,包括进销存及全部控件!」· CLS 代码 · 共 549 行 · 第 1/2 页

CLS
549
字号
      Err.Raise vbObjectError + 1, , "仓库不能为空!"
      Exit Property
   End If
   If m_CgShdAp_HwCkMc <> vCgShdAp_HwCkMc Then
      If HwCk.Requery(vCgShdAp_HwCkMc) = -1 Then
         Err.Raise vbObjectError + 1, , "录入的仓库不存在!"
         Exit Property
      End If
      m_CgShdAp_HwCkno = HwCk.HwCkNo
   End If
   m_CgShdAp_HwCkMc = vCgShdAp_HwCkMc
End Property

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

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

Public Property Let CgShdApQty(vCgShdApQty As Double)
   If vCgShdApQty <= 0 Then
      Err.Raise vbObjectError + 1, , "数量必须大于零!"
      Exit Property
   End If
   m_CgShdApQty = vCgShdApQty
   m_CgShdApAmt = Val(Format(vCgShdApQty * m_CgShdApPrice, "##"))
   m_CgShdApTAmt = Val(Format(m_CgShdApAmt + m_CgShdApQAmt, "##"))
End Property

Public Property Let CgShdApPrice(vCgShdApPrice As Double)
   If vCgShdApPrice < 0 Then
      Err.Raise vbObjectError + 1, , "单价不能小于零!"
      Exit Property
   End If
   m_CgShdApPrice = vCgShdApPrice
   m_CgShdApAmt = Val(Format(vCgShdApPrice * m_CgShdApQty, "##"))
   m_CgShdApTAmt = Val(Format(m_CgShdApAmt + m_CgShdApQAmt, "##"))
End Property

Public Property Let CgShdApAmt(vCgShdApAmt As Double)
   If vCgShdApAmt < 0 Then
      Err.Raise vbObjectError + 1, , "采购金额不能小于零!"
      Exit Property
   End If
   m_CgShdApAmt = vCgShdApAmt
   m_CgShdApTAmt = Val(Format(m_CgShdApAmt + m_CgShdApQAmt, "##"))
End Property

Public Property Let CgShdApQAmt(vCgShdApQAmt As Double)
   If vCgShdApQAmt < 0 Then
      Err.Raise vbObjectError + 1, , "其它费用金额不能小于零!"
      Exit Property
   End If
   m_CgShdApQAmt = vCgShdApQAmt
   m_CgShdApTAmt = Val(Format(m_CgShdApAmt + m_CgShdApQAmt, "##"))
End Property

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

Public Property Let CgShdAp_CwSmCode(vCgShdAp_CwSmCode As String)
   If Trim(vCgShdAp_CwSmCode) = "" Then
      Err.Raise vbObjectError + 1, , "税码不能为空!"
      Exit Property
   End If
   If m_CgShdAp_CwSmCode <> vCgShdAp_CwSmCode Then
      If CwSm.Requery(vCgShdAp_CwSmCode) = -1 Then
         Err.Raise vbObjectError + 1, , "录入的税码不存在!"
         Exit Property
      End If
      m_CgShdAp_CwSmNo = CwSm.CwsmNo
      m_CgShdAp_CwSmConv = CwSm.CwsmSl
   End If
   m_CgShdAp_CwSmCode = vCgShdAp_CwSmCode
End Property

Public Property Let CgShdApBz(vCgShdApDBz As String)
   m_CgShdApBz = vCgShdApDBz
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_CgShdApId = -1 Then
   
      Cmd.CommandText = gPublicFunction.GetCallSPString("CgShdApREC_INSERT", 18)
      
      Cmd(0) = m_CgShdAph.CgShdAphNo
      Cmd(1) = m_CgShdAp_CgPodno
      Cmd(2) = m_CgShdAp_HwBmno
      Cmd(3) = m_CgShdAp_HwDwNo
      Cmd(4) = m_CgShdAp_HwDwConv
      Cmd(5) = m_CgShdAp_HwCkno
      Cmd(6) = m_CgShdApQty
      Cmd(7) = m_CgShdApPrice
      Cmd(8) = m_CgShdApAmt
      Cmd(9) = m_CgShdApQAmt
      Cmd(10) = m_CgShdApTAmt
      Cmd(11).Direction = adParamOutput 'm_CgShdApIPrice
      Cmd(12).Direction = adParamOutput 'm_CgShdApIAmt
      Cmd(13) = m_CgShdAp_CwSmNo
      Cmd(14) = m_CgShdAp_CwSmConv
      Cmd(15) = m_CgShdApBz
      Cmd(16).Direction = adParamOutput 'CgShdApMiono
      Cmd(17).Direction = adParamOutput    'CgShdNo
      
   Else
      
      Cmd.CommandText = gPublicFunction.GetCallSPString("CgShdApREC_UPDATE", 15)
      
      Cmd(0) = m_CgShdApNo
      Cmd(1) = m_CgShdAp_HwBmno
      Cmd(2) = m_CgShdAp_HwDwNo
      Cmd(3) = m_CgShdAp_HwDwConv
      Cmd(4) = m_CgShdAp_HwCkno
      Cmd(5) = m_CgShdApQty
      Cmd(6) = m_CgShdApPrice
      Cmd(7) = m_CgShdApAmt
      Cmd(8) = m_CgShdApQAmt
      Cmd(9) = m_CgShdApTAmt
      Cmd(10).Direction = adParamOutput 'm_CgShdApIPrice
      Cmd(11).Direction = adParamOutput 'm_CgShdApIAmt
      Cmd(12) = m_CgShdAp_CwSmNo
      Cmd(13) = m_CgShdAp_CwSmConv
      Cmd(14) = m_CgShdApBz
      
   End If
   
   Cmd.Execute
   
   If m_CgShdApId = -1 Then
      m_CgShdApIPrice = Cmd(11)
      m_CgShdApIAmt = Cmd(12)
      m_CgShdApMioNo = Cmd(16)
      m_CgShdApNo = Cmd(17)
      m_CgShdApId = 1
   Else
      m_CgShdApIPrice = Cmd(10)
      m_CgShdApIAmt = Cmd(11)
   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 "CGSHDAPREC", "CGSHDAPNO", CStr(m_CgShdApNo)
   
On Error GoTo Errorhandle

   Set Cmd = New ADODB.Command
   Set Cmd.ActiveConnection = gDbCommon.Conn
      
   Cmd.CommandText = "{CALL CgShdApREC_DELETE(?)}"
   Cmd(0) = m_CgShdApNo
   
   gDbCommon.Conn.BeginTrans
   Cmd.Execute
   If CgShdAph.CgShdAps.Count = 1 Then
      CgShdAph.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(vCgShdApNo As Double) As Integer
   Dim mRs As DbRs
   Dim mSqlStr As String
On Error GoTo Errorhandle
   Requery = -1
   
   Set mRs = New DbRs
   
   mSqlStr = "SELECT CgShdAp_CgShdApHNO,CgShdAp_CgPodDOCNO=COALESCE((SELECT CgPodHDOCNO FROM CgPodHREC,CgPodREC WHERE CgPodNO=CgShdAp_CgPodNO AND CgPodHNO=CgPod_CgPodHNO),''),CgShdAp_CgPodNO,"
   mSqlStr = mSqlStr & "CgShdAp_HwBmCode=COALESCE((SELECT HwBmCode FROM HWBMREC WHERE HWBMNO=CgShdAp_HWBMNO),''),CgShdAp_HwBmMc=COALESCE((SELECT HwBmMc FROM HWBMREC WHERE HWBMNO=CgShdAp_HWBMNO),''),CgShdAp_HWBMNO,"
   mSqlStr = mSqlStr & "CgShdAp_HwCkMc=COALESCE((SELECT HwCkMc FROM HWCKREC WHERE HWCKNO=CgShdAp_HWCKNO),''),CgShdAp_HWCKNO,"
   mSqlStr = mSqlStr & "CgShdAp_HwDwCode=COALESCE((SELECT HWDWCode FROM HWDWREC WHERE HWDWNO=CgShdAp_HWDWNO),''),CgShdAp_HWDWNO,CgShdAp_HWDWCONV,"
   mSqlStr = mSqlStr & "CgShdApQTY,CgShdApPRICE,CgShdApAMT,CgShdApQAMT,CgShdApTAMT,CgShdApIPRICE,CgShdApIAMT,"
   mSqlStr = mSqlStr & "CgShdAp_CWSMCODE=COALESCE((SELECT CWSMCODE FROM CWSMREC WHERE CWSMNO=CgShdAp_CWSMNO),''),CgShdAp_CWSMNO,CgShdAp_CWSMCONV,"
   mSqlStr = mSqlStr & "CgShdApBZ,CgShdApMIONO,CgShdApNO FROM CgShdApREC WHERE CgShdApNO=" & CStr(vCgShdApNo)
   
   mRs.Fillbydb mSqlStr
   
   If Not mRs.EOF Then
      BatchLet mRs!CgShdAp_CgShdAphno, mRs!CgShdAp_CgPodDocno, mRs!CgShdAp_CgPodno, mRs!CgShdAp_HwBmCode, mRs!CgShdAp_HwBmMc, mRs!CgShdAp_HwBmno, _
               mRs!CgShdAp_HwCkMc, mRs!CgShdAp_HwCkno, mRs!CgShdAp_HwDwCode, mRs!CgShdAp_HwDwno, mRs!CgShdAp_HwDwConv, _
               mRs!CgShdApQty, mRs!CgShdApPrice, mRs!CgShdApAmt, mRs!CgShdApQAmt, mRs!CgShdApTAmt, mRs!CgShdApIPrice, mRs!CgShdApIAmt, _
               mRs!CgShdAp_CwSmCode, mRs!CgShdAp_CwSmno, mRs!CgShdAp_CwsmConv, _
               mRs!CgShdApBz, mRs!CgShdApMioNo, mRs!CgShdApNo
   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_CgShdAp_CgShdAphno = Properties(0)
   m_CgShdAp_CgPodDocno = Properties(1)
   m_CgShdAp_CgPodno = Properties(2)
   m_CgShdAp_HwBmCode = Properties(3)
   m_CgShdAp_HwBmMc = Properties(4)
   m_CgShdAp_HwBmno = Properties(5)
   m_CgShdAp_HwCkMc = Properties(6)
   m_CgShdAp_HwCkno = Properties(7)
   m_CgShdAp_HwDwCode = Properties(8)
   m_CgShdAp_HwDwNo = Properties(9)
   m_CgShdAp_HwDwConv = Properties(10)
   m_CgShdApQty = Properties(11)
   m_CgShdApPrice = Properties(12)
   m_CgShdApAmt = Properties(13)
   m_CgShdApQAmt = Properties(14)
   m_CgShdApTAmt = Properties(15)
   m_CgShdApIPrice = Properties(16)
   m_CgShdApIAmt = Properties(17)

   m_CgShdAp_CwSmCode = Properties(18)
   m_CgShdAp_CwSmNo = Properties(19)
   m_CgShdAp_CwSmConv = Properties(20)
   m_CgShdApBz = Properties(21)
   
   m_CgShdApMioNo = Properties(22)
   m_CgShdApNo = Properties(23)

   m_CgShdApId = 1

End Sub




⌨️ 快捷键说明

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