当前位置:编程学习 > C#/ASP.NET >>

用vb.net写的进货系统,我一添加记录他就提示票据号不能为空,各位高手帮帮忙看什么地方不对。

 
Imports System.Data.SqlClient


Public Class frmjinhuo
    Dim bmdata As BindingManagerBase
    Private Sub setkongjianture()
        txtpiaoju.Enabled = True
        DateTimePicker1.Enabled = True
        Cmbzhonglei.Enabled = True
        txtbianhao.Enabled = True
        txtmingcheng.Enabled = True
        txtdanwei.Enabled = True
        txtdanjia.Enabled = True
        txtshuliang.Enabled = True
        txtjine.Enabled = True
        txtjingshouren.Enabled = True

    End Sub
    Private Sub setkongjianfalse()
        txtpiaoju.Enabled = False
        DateTimePicker1.Enabled = False
        Cmbzhonglei.Enabled = False
        txtbianhao.Enabled = False
        txtmingcheng.Enabled = False
        txtdanwei.Enabled = False
        txtdanjia.Enabled = False
        txtshuliang.Enabled = False
        txtjine.Enabled = False
        txtjingshouren.Enabled = False

    End Sub
    Private Sub updatedataset()
        Dim datasetchanges As DataSet
        bmdata.EndCurrentEdit()
        datasetchanges = CType(DataSet21.GetChanges, DataSet)
        If (Not (datasetchanges) Is Nothing) Then
            Try
                updatedatasource(datasetchanges)
                DataSet21.Merge(datasetchanges)
                DataSet21.AcceptChanges()

            Catch exupdate As System.Exception
                Throw (exupdate)

            End Try
        End If
    End Sub
    Private Sub updatedatasource(ByVal changedrows As DataSet)
        Try
            If (Not (changedrows) Is Nothing) Then
                SqlConnection1.Open()
                SqlDataAdapter1.Update(changedrows)

            End If
        Catch updateexception As System.Exception
            Throw updateexception
        Finally
            SqlConnection1.Close()


        End Try
    End Sub
    Private Sub frmjinhuo_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        setkongjianfalse()
        SqlDataAdapter1.Fill(DataSet21, "采购表")
        bmdata = BindingContext(DataSet21, "采购表")

    End Sub

    Private Sub Btndengji_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btndengji.Click
        setkongjianture()
        Try
            bmdata.EndCurrentEdit()
            bmdata.AddNew()
            DateTimePicker1.Text = Today()
            txtjingshouren.Text = username
        Catch exadd As System.Exception
            MessageBox.Show(exadd.Message)

        End Try
    End Sub

    Private Sub Btnbaocun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnbaocun.Click
        Try
            updatedataset()

        Catch exupdate As System.Exception
            MessageBox.Show(exupdate.Message)

        End Try
    End Sub

    Private Sub Btnxiugai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnxiugai.Click
        setkongjianture()
        DateTimePicker1.Focus()

    End Sub

    Private Sub Btnshangchu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnshangchu.Click
        If MessageBox.Show("你真的要删除吗?请确认", "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Stop) = Windows.Forms.DialogResult.Yes Then
            If bmdata.Count > 0 Then
                DataSet21.Tables("采购表").Rows(bmdata.Position).Delete()

            End If
        End If
    End Sub

    Private Sub Btntuichu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btntuichu.Click
        Me.Close()

    End Sub


    Private Sub txtbianhao_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtbianhao.Validated
        Dim myconn1 As New SqlClient.SqlConnection(myCnn)
        Dim mycomm1 As New SqlCommand()
        mycomm1.Connection = myconn1
        mycomm1.CommandText = "select 货物名称 ,单位 ,进货价格 ,供应商 from 采购表 where 货物编号 = '" & txtbianhao.Text.Trim & "'"
        Dim myreader1 As SqlDataReader
        myconn1.Open()
        myreader1 = mycomm1.ExecuteReader

        While myreader1.Read
            Try
                txtmingcheng.Text = myreader1.GetString(0)
                txtdanwei.Text = myreader1.GetString(1)
                txtdanjia.Text = myreader1.GetString(2)
                txtgongying.Text = myreader1.GetString(3)
            Catch
                MsgBox(Err.Description)

            End Try
        End While
        myconn1.Close()

    End Sub

    Private Sub txtjine_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtjine.TextChanged
        txtjine.Text = Val(txtdanjia.Text) * Val(txtshuliang.Text)
    End Sub
--------------------编程问答-------------------- 添加记录时,有票据号字段吗 --------------------编程问答-------------------- 检查你的表结构和添加记录的SQL语句的一致性,不可能有其它的问题。 --------------------编程问答-------------------- 票号变量没取到,或INSERT有问题 --------------------编程问答--------------------
引用 3 楼 yjqmaster 的回复:
票号变量没取到,或INSERT有问题
--------------------编程问答-------------------- 我把知道的都用上了,也看了好多书,改了好多地方,就是提示票据号不能为空,真不明白!~
给为高手能给我说说哪个语句错了,帮我改改~~!
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,