Ayuda con autogenarar código en visual basic 2008
Buenas experto la idea es autogenerar un código (100220110001) que es la fecha 10022011 más un correlativo de 4 dígitos (0001)
Por ejemplo
fecha 10/02/2011
Registro 1 (100220110001)
Registro 2 (100220110002)
...
fecha 11/02/2011
Registro 1 (110220110001)
Registro 2 (110220110002)
haci quiero el formato del código pero hasta aquí llegue por favor ayudame
el problema esta con el primer registro del día ya que cuando hago la consulta no encuentra ningún registro y me sale error y no se como depurarlo
mando el código en vb 2008 con access 2007 gracias
Dim rs As ADODB.Recordset
Dim maxcodigo As String
Dim y, mm, m, d As String
Dim cadena, aumenta As String
d = dtp1.Value.Date.ToString("dd")
mm = dtp1.Value.Date.Month.ToString
If Len(mm) = 1 Then
m = 0 & dtp1.Value.Date.Month.ToString
Else
m = dtp1.Value.Date.Month.ToString
End If
y = dtp1.Value.Date.ToString("yyyy")
cadena = d & m & y
sql = "SELECT MAX(idpedido)FROM pedidos where idpedido like '%" & cadena & "%'"
rs = conexion.Execute(sql)
'aqui me manda error cuando no encuentra ningun registro
maxcodigo = rs.Fields(0).Value
'aqui aumento
aumenta = Mid(maxcodigo, 9) + 1
'aqui supuestamente es cuando no encuentra registro aumenta en uno
'txtnumcuota.Text = cadena & "0001"
'aqui encuentra registro y lo suma 1
txtnumcuota.Text = cadena & "000" & aumenta
Por ejemplo
fecha 10/02/2011
Registro 1 (100220110001)
Registro 2 (100220110002)
...
fecha 11/02/2011
Registro 1 (110220110001)
Registro 2 (110220110002)
haci quiero el formato del código pero hasta aquí llegue por favor ayudame
el problema esta con el primer registro del día ya que cuando hago la consulta no encuentra ningún registro y me sale error y no se como depurarlo
mando el código en vb 2008 con access 2007 gracias
Dim rs As ADODB.Recordset
Dim maxcodigo As String
Dim y, mm, m, d As String
Dim cadena, aumenta As String
d = dtp1.Value.Date.ToString("dd")
mm = dtp1.Value.Date.Month.ToString
If Len(mm) = 1 Then
m = 0 & dtp1.Value.Date.Month.ToString
Else
m = dtp1.Value.Date.Month.ToString
End If
y = dtp1.Value.Date.ToString("yyyy")
cadena = d & m & y
sql = "SELECT MAX(idpedido)FROM pedidos where idpedido like '%" & cadena & "%'"
rs = conexion.Execute(sql)
'aqui me manda error cuando no encuentra ningun registro
maxcodigo = rs.Fields(0).Value
'aqui aumento
aumenta = Mid(maxcodigo, 9) + 1
'aqui supuestamente es cuando no encuentra registro aumenta en uno
'txtnumcuota.Text = cadena & "0001"
'aqui encuentra registro y lo suma 1
txtnumcuota.Text = cadena & "000" & aumenta
1 Respuesta
Respuesta de Antonio Pugliese
1