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

📄 frm

📁 注释:用VB开发的进销存系统源码
💻
📖 第 1 页 / 共 3 页
字号:
      Begin Threed.SSCommand cmdPrint 
         CausesValidation=   0   'False
         Height          =   465
         Left            =   4680
         TabIndex        =   11
         Tag             =   "退出"
         ToolTipText     =   "退出"
         Top             =   30
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "打印[&P]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
      Begin Threed.SSCommand cmdToolQuery 
         Height          =   465
         Left            =   3750
         TabIndex        =   10
         Tag             =   "保存"
         ToolTipText     =   "保存单据"
         Top             =   30
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "查询[&Q]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
      Begin Threed.SSCommand cmdToolExit 
         CausesValidation=   0   'False
         Height          =   465
         Left            =   5610
         TabIndex        =   9
         Tag             =   "退出"
         ToolTipText     =   "退出"
         Top             =   30
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "退出[&X]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
      Begin Threed.SSCommand cmdToolDelete 
         CausesValidation=   0   'False
         Height          =   465
         Left            =   2835
         TabIndex        =   8
         Tag             =   "删除"
         ToolTipText     =   "删除当前单据"
         Top             =   30
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "删除[&D]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
      Begin Threed.SSCommand cmdToolSave 
         Height          =   465
         Left            =   1890
         TabIndex        =   7
         Tag             =   "保存"
         ToolTipText     =   "保存单据"
         Top             =   30
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "保存[&S]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
      Begin Threed.SSCommand cmdToolCommit 
         Height          =   465
         Left            =   960
         TabIndex        =   6
         Tag             =   "确认"
         ToolTipText     =   "确认单据,使之生效"
         Top             =   30
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "确认[&O]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
      Begin Threed.SSCommand cmdToolAdd 
         CausesValidation=   0   'False
         Height          =   465
         Left            =   36
         TabIndex        =   5
         Tag             =   "新建"
         ToolTipText     =   "新建单据"
         Top             =   36
         Width           =   930
         _ExtentX        =   1640
         _ExtentY        =   820
         _Version        =   131073
         ForeColor       =   0
         Caption         =   "新建[&N]"
         ButtonStyle     =   3
         BevelWidth      =   0
      End
   End
   Begin MSComctlLib.StatusBar stbData 
      Align           =   2  'Align Bottom
      Height          =   375
      Left            =   0
      TabIndex        =   20
      Top             =   6240
      Width           =   9630
      _ExtentX        =   16986
      _ExtentY        =   661
      _Version        =   393216
      BeginProperty Panels {8E3867A5-8586-11D1-B16A-00C0F0283628} 
         NumPanels       =   2
         BeginProperty Panel1 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            Object.Width           =   5292
            MinWidth        =   5292
            Key             =   "状态信息"
         EndProperty
         BeginProperty Panel2 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            AutoSize        =   1
            Object.Width           =   11615
         EndProperty
      EndProperty
   End
   Begin VB.Label Label5 
      BackColor       =   &H80000017&
      Caption         =   "Label5"
      Height          =   5130
      Left            =   270
      TabIndex        =   13
      Top             =   930
      Width           =   9060
   End
End
Attribute VB_Name = "frm分店销售"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

'*************************************************
'               分店销售
'*************************************************

Option Explicit

Dim I, j As Integer
Private Rs As New ADODB.Recordset

Private Function OperSale() As Boolean
    Dim RsTemp As New ADODB.Recordset
    Dim DataOK As Boolean
    Dim R As New ADODB.Recordset
    Dim GoodsNum, Iprc, IIprc, Rprc
    Dim strOperMsg As String
    Dim N
    On Error GoTo CommitErr
'    Conn.BeginTrans
    
    Cmd.ActiveConnection = Conn
    grdDET.MoveFirst
    For N = 0 To grdDET.Rows - 1
        GoodsNum = grdDET.Columns("数量").Value
        sSQL = "SELECT 商品编码,进价,含税进价,零售价 FROM 商品主档 WHERE 商品编码='" & Trim(grdDET.Columns("商品编码").Text) & "'"
        Set RsTemp = Nothing
        RsTemp.Open sSQL, Conn, adOpenStatic, adLockOptimistic
        Iprc = RsTemp("进价")
        IIprc = RsTemp("含税进价")
        Rprc = RsTemp("零售价")
        sSQL = "SELECT * FROM 分店库存 WHERE 经营方式='经销' AND 商品编码='" & Trim(grdDET.Columns("商品编码").Text) & "' AND 分店编码='" & Trim(cmbGroup.Text) & "'"
        Set RsTemp = Nothing
        RsTemp.Open sSQL, Conn, adOpenStatic, adLockOptimistic
        If RsTemp.EOF Then
            MsgBox "未发现该商品的库存信息!", vbInformation, "提示窗口"
            OperSale = False
'            Conn.RollbackTrans
            Exit Function
         '存在,对库存进行更新
        End If

        If GetSetting("进销存管理系统", "库存设置", "允许负库存销售", "1") <> "1" Then
            If GoodsNum > RsTemp("数量") Then
'                Conn.RollbackTrans
                MsgBox "库存数量不足!", vbExclamation, "提示窗口"
                OperSale = False
                Exit Function
            End If
        End If
        
        RsTemp("数量") = RsTemp("数量") - GoodsNum
        RsTemp("进价金额") = RsTemp("进价金额") - GoodsNum * Iprc
        RsTemp("含税进价金额") = RsTemp("含税进价金额") - GoodsNum * IIprc
        RsTemp("售价金额") = RsTemp("售价金额") + grdDET.Columns("零售金额").Value
        RsTemp.Update
        
        grdDET.MoveNext
    Next N
    
    cmdToolCommit.Enabled = False
    cmdToolSave.Enabled = False
    cmdToolDelete.Enabled = False
'    Conn.CommitTrans
    OperSale = True
    Exit Function
CommitErr:
'    Conn.RollbackTrans
    OperSale = False
    MsgBox "确认失败!,请检查数据是否存在错误!" & vbCrLf & Err.Description, vbExclamation, "警告窗口"
End Function

Private Sub DerectSubStore()
    On Error GoTo SubErr
    Dim I, j, N
    Dim RsTemp As New ADODB.Recordset
    Dim RsGoods As New ADODB.Recordset
    Dim RsStore As New ADODB.Recordset
    
    Set RsTemp = Nothing
    sSQL = "SELECT * FROM POS销售明细 WHERE 冲减标志='N'"
    RsTemp.Open sSQL, Conn, adOpenStatic, adLockOptimistic
    If RsTemp.EOF Then
        MsgBox "无发现未冲减的商品!", vbInformation, "提示窗口"
        Exit Sub
    End If
    
    
    Conn.BeginTrans
    
    frm冲减信息.prgSub.Max = RsTemp.RecordCount
    frm冲减信息.prgSub.Value = 0
    frm冲减信息.Show 1
    
    
    While Not RsTemp.EOF
        
        
        frm冲减信息.txtMsg.Text = frm冲减信息.txtMsg.Text & vbCrLf & "正在冲减商品" & RsTemp("商品编码") & "..."
        
        sSQL = "SELECT * FROM 商品主档 WHERE 商品编码='" & Trim(RsTemp("商品编码")) & "'"
        Set RsGoods = Nothing
        RsGoods.Open sSQL, Conn, adOpenStatic, adLockReadOnly
        
        sSQL = "SELECT * FROM 分店库存 WHERE 商品编码='" & Trim(RsTemp("商品编码")) & "' AND 分店编码='" & Trim(RsTemp("分店编码")) & "'"
        Set RsStore = Nothing
        RsStore.Open sSQL, Conn, adOpenStatic, adLockOptimistic
        
        RsStore("数量") = RsStore("数量") - RsTemp("数量")
        RsStore("进价金额") = RsStore("进价金额") - RsTemp("数量") * RsGoods("进价")
        RsStore("不含税进价金额") = RsStore("不含税进价金额") - RsTemp("数量") * RsGoods("含税进价")
        RsStore.Update
        
        RsTemp("冲减标志") = "P"
        RsTemp.Update
        
        frm冲减信息.prgSub.Value = frm冲减信息.prgSub.Value + 1
        frm冲减信息.txtMsg.Text = frm冲减信息.txtMsg.Text & "成功!"
        
        RsTemp.MoveNext
    Wend
    
    Conn.CommitTrans
    MsgBox "成功冲减库存!", vbInformation, "错误窗口"
    Unload frm冲减信息
    Exit Sub
SubErr:
    Conn.RollbackTrans
    MsgBox "冲减库存时发生错误!", vbInformation, "错误窗口"
    Unload frm冲减信息
End Sub


Private Function SaveTable() As Boolean
    On Error GoTo SaveErr
    Dim N
    grdDET.MoveFirst
    For N = 0 To grdDET.Rows - 1
        sSQL = "INSERT INTO 分店销售(操作员,分店编码,销售日期," & _
            " 商品编码,品名,单位,数量,零售价,零售金额) " & _
            " VALUES('" & txtIptno.Text & "'" & _
            ",'" & cmbGroup.Text & "'" & _
            ",'" & Format(dtpDate.Value, "YYYY-MM-DD") & "'" & _
            ",'" & grdDET.Columns(0).Text & "'" & _

⌨️ 快捷键说明

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