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

📄 classstuffinstock.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 = "Classstuffinstock"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Option Explicit
' 要做: 声明本地的 ADO Recordset 对象。例如:
Private rstCache As ADODB.Recordset
Private Sub Class_GetDataMember(DataMember As String, Data As Object)
    '要做:  返回基于 DataMember 的相应的 recordset。例如:
    Select Case DataMember
    Case ""             ' Default
        Set Data = rstCache
    Case Else           ' Default
        Set Data = rstCache
    End Select
End Sub
Private Sub Class_Initialize()
    Dim i As Integer
    
    ' 创建记录集实例
    Set rstCache = New ADODB.Recordset
    ' 设置记录集属性
    With rstCache
        .Fields.Append "stuffinno", adVarChar, 9
        .Fields.Append "stuffid", adVarChar, 5
        .Fields.Append "stuffname", adVarChar, 50
        .Fields.Append "stuffkind", adVarChar, 50
        .Fields.Append "stuffcolor", adVarChar, 20
        .Fields.Append "stuffunit", adVarChar, 8
        .Fields.Append "stuffnumber", adDouble, 9
        .Fields.Append "stuffsupply", adVarChar, 20
        .CursorLocation = adUseClient
        .CursorType = adOpenStatic
        .LockType = adLockOptimistic
        .Open
    End With
End Sub
Public Property Get GetOrderNo() As Variant
   ' GetOrderNo = [OrderNo]
End Property

Public Function Recordset() As Recordset
Set Recordset = rstCache
End Function

Public Property Let letOrderNo(ByVal vNewValue As Variant)
    letOrderNo = vNewValue
End Property

Public Sub SaveDatastuffinstock(OrderNo As String)
'On Error Resume Next
Dim rstTable As New ADODB.Recordset, SqlString As String
Dim rstOrder As New ADODB.Recordset, strOrder As String
   strOrder = "SELECT tb_stuffinstock.* From tb_stuffinstock Where Sell.Style='0' ORDER BY Sell.SellNo DESC"
   '*****保存主表
   rstOrder.Open strOrder, GetConnect, adOpenStatic, adLockOptimistic
      With rstOrder
        .AddNew
        ![stuffinno] = frmstuffinstock.stuffinno.Caption
        ![stuffindate] = frmstuffinstock.stuffindate.Value
        ![stuffstock] = frmstuffinstock.stuffstock.Text
        ![stuffinph] = frmstuffinstock.stuffinph.Text
        ![stuffinmemo] = frmstuffinstock.stuffinmemo.Text
        .Update
        .Close
     End With
  
  '*****保存子表
  SqlString = "Select tb_stuffinstocksub.* from tb_stuffinstocksub "
  rstTable.LockType = adLockBatchOptimistic
  rstTable.Open SqlString, GetConnect, adOpenStatic
  rstCache.MoveFirst
    Do Until rstCache.EOF
    rstTable.AddNew
        rstTable![stuffinno] = [OrderNo]
        rstTable![stuffid] = cField(rstCache![stuffid])
        rstTable![stuffnumber] = rstCache![stuffnumber]
    rstCache.MoveNext
    Loop
    rstTable.UpdateBatch
    rstTable.Close
   
End Sub

'''Public Function SumTotal() As Long
'''
'''With rstCache
'''   If .BOF And .EOF Then
'''   Else
'''     SumTotal = 0
'''     .MoveFirst
'''     Do Until .EOF
'''       SumTotal = SumTotal + ![Sum]
'''       .MoveNext
'''     Loop
'''   End If
'''End With
'''End Function

Public Sub GetDatastuffinstock(OrderNo As String)
'On Error Resume Next
'Initialize

delete
Dim rstTable As New ADODB.Recordset, rstOrder As New ADODB.Recordset, SqlOrder As String, Sqlsub As String
SqlOrder = "SELECT tb_stuffinstock.*,  FROM tb_stuffinstock where tb_stuffinstock.stuffinno='" & [OrderNo] & "'"
Sqlsub = "SELECT tb_stuffinstocksub.* FROM tb_stuffinstocksub Where tb_stuffinstocksub.stuffinno = '" & [OrderNo] & "'  ORDER BY tb_stuffinstocksub.stuffid;"

'*****  主表赋值
rstOrder.Open SqlOrder, GetConnect, adOpenDynamic
With rstOrder
    If .BOF And .EOF Then
    Else
       frmstuffinstock.stuffinno.Caption = ![stuffinno]
       frmstuffinstock.stuffindate.Value = ![stuffindate]
       frmstuffinstock.stuffstock.Text = ![stuffstock]
       
       frmstuffinstock.ClientCode.Text = ![ClientCode]
       frmstuffinstock.Client.Text = ![CompanyByName]
       FrmSell.Address.Text = ![Address]
       FrmSell.memo = ![memo]
       FrmSell.BillType.Text = ![BillType]
       FrmSell.SumText.Text = Format(![acount], "#,##0.00")
       FrmSell.Stock.Text = ![Stock]
   End If
   .Close
End With



'****  数据控件赋值
 'rstCache.Open "Delete from TempPay", cn

'With rstCache
'On Error Resume Next
'End With


rstTable.Open Sqlsub, cn, adOpenForwardOnly
If rstTable.EOF And rstTable.BOF Then
Else

    rstTable.MoveFirst
    Do While Not rstTable.EOF
         rstCache.AddNew
            rstCache![ordercode] = rstTable![ordercode]
            rstCache![OrderName] = rstTable![ItemName]
            rstCache![unit] = rstTable![ItemUnit]
            'MsgBox ("00000")
            rstCache![Number] = rstTable![Number]
            rstCache![unitprice] = rstTable![unitprice]
            rstCache![rebate] = rstTable![rebate]
            rstCache![Sum] = (1 - rstTable![rebate]) * rstTable![unitprice] * rstTable![Number]
        rstTable.MoveNext
        rstCache.Update
    Loop
    rstCache.MoveFirst
    rstTable.Close
End If
End Sub

Public Sub Initialize()
 rstCache.Close
 'rstCache.Open , cn, adOpenStatic, adLockOptimistic
 'Set rstCache = Nothing
 Class_Initialize
End Sub

Public Sub DelSell(OrderNo As String)
Dim rstOrder As New ADODB.Recordset, strOrder As String, rstOrderSub As New ADODB.Recordset, strSub As String
strOrder = "select Sell.* from Sell where  Sell.SellNO ='" & [OrderNo] & "'"
rstOrder.Open strOrder, cn, adOpenStatic, adLockOptimistic
With rstOrder
Do While .RecordCount > 0
     .MoveFirst
     .delete
     .Update
Loop
  .Close
End With


strSub = "select SellSub.* from SellSub where  SellSub.SellNo='" & [OrderNo] & "'"
rstOrderSub.Open strSub, cn, adOpenStatic, adLockOptimistic
With rstOrderSub
Do While .RecordCount > 0
     .MoveFirst
     .delete
     .Update
Loop
  .Close
End With

End Sub


Public Sub AddNew()

If rstCache.EOF Then
    rstCache.AddNew
    rstCache![ordercode] = ""
    rstCache![OrderName] = ""
ElseIf rstCache.EditMode = adEditAdd Then
    rstCache.AddNew
    rstCache![ordercode] = ""
    rstCache![OrderName] = ""
End If
End Sub
Public Sub delete()
    Do While rstCache.RecordCount > 0
        rstCache.MoveFirst
        rstCache.delete
    Loop
End Sub


⌨️ 快捷键说明

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