Public Const strConn As String = "Data source=DESKTOP-1T4DKVP\SQLEXPRESS ;Initial Catalog=ITSale ;Integrated Security=true"
Public Function Auto_id(ByVal strConn As String, ByVal fid As String, ByVal ttable As String, ByVal headdata As String) As String
Dim conn As SqlConnection
Dim com As SqlCommand
Dim dr As SqlDataReader
com = New SqlCommand
conn = New SqlConnection
With conn
If .State = ConnectionState.Open Then .Close()
.ConnectionString = strConn
.Open()
End With
Dim sb As New StringBuilder()
sb.Remove(0, sb.Length)
sb.Append("SELECT top 1 " + fid)
sb.Append(" FROM " + ttable)
sb.Append(" ORDER BY " + fid + " DESC ")
Dim sqlautoid As String = sb.ToString()
With com
.CommandType = CommandType.Text
.CommandText = sqlautoid
.Connection = conn
dr = .ExecuteReader()
End With
If dr.HasRows Then
dr.Read()
'เอาข้อมูล ID ค่าหลังสุดมาใส่ tmpid_str
Dim tmpid_str As String
tmpid_str = dr.Item(fid).ToString
Dim tmpid As Integer = 0
tmpid = CInt(tmpid_str.Substring(1, 2)) + 1
dr.Close() ' ปิดการทำงาน DataReader
Return headdata & tmpid.ToString("00")
Else
dr.Close()
Return headdata & "01"
End If
End Function
P01 ทำยังไงให้รันเป็น P02ครับ
พอกดเพิ่มมันเป็นP16
อยากให้โปรแกรม สามารถรันย้อนกลับไปเพิ่มตัวที่ถูกลบไปได้ครับ
เช่นผมเคยเพิ่ม P01, P02, P03, P04 เข้าไปแล้วเกิดลบ P02ปุปมันหายไป พอกดเพิ่มมันนับต่อเป็น P05
ทำยังไงให้สามารถรันย้อนกลับไปเพิ่มตัวที่ถูกลบไปได้ครับ
Public Function Auto_id(ByVal strConn As String, ByVal fid As String, ByVal ttable As String, ByVal headdata As String) As String
Dim conn As SqlConnection
Dim com As SqlCommand
Dim dr As SqlDataReader
com = New SqlCommand
conn = New SqlConnection
With conn
If .State = ConnectionState.Open Then .Close()
.ConnectionString = strConn
.Open()
End With
Dim sb As New StringBuilder()
sb.Remove(0, sb.Length)
sb.Append("SELECT top 1 " + fid)
sb.Append(" FROM " + ttable)
sb.Append(" ORDER BY " + fid + " DESC ")
Dim sqlautoid As String = sb.ToString()
With com
.CommandType = CommandType.Text
.CommandText = sqlautoid
.Connection = conn
dr = .ExecuteReader()
End With
If dr.HasRows Then
dr.Read()
'เอาข้อมูล ID ค่าหลังสุดมาใส่ tmpid_str
Dim tmpid_str As String
tmpid_str = dr.Item(fid).ToString
Dim tmpid As Integer = 0
tmpid = CInt(tmpid_str.Substring(1, 2)) + 1
dr.Close() ' ปิดการทำงาน DataReader
Return headdata & tmpid.ToString("00")
Else
dr.Close()
Return headdata & "01"
End If
End Function
P01 ทำยังไงให้รันเป็น P02ครับ
พอกดเพิ่มมันเป็นP16
อยากให้โปรแกรม สามารถรันย้อนกลับไปเพิ่มตัวที่ถูกลบไปได้ครับ
เช่นผมเคยเพิ่ม P01, P02, P03, P04 เข้าไปแล้วเกิดลบ P02ปุปมันหายไป พอกดเพิ่มมันนับต่อเป็น P05