| ID | Asunto | Fecha | Nick | |
| 55762 | realizar una consulta para extraer nro maximo | 06/09/11 02:57 | GASTONALDO | |  |
hola a todos estoy intentando programar un sistema de facturacion se que se hace el encabezado y luego el detalle estoy preguntando primero por el encabezado. Estoy realizando una consulta pero la misma no me trae ningun registro, quiero extraer el ultimo nro de comprobante almacenado en la tabla comprobante para luego sumarle uno que seria el correlativo. Este es mi codigo por si alguien me puede ayudar: Aclaro qque la conexion anda perfecta. Sub BUSCARNROFACTURA()
Dim cmdnrofactura As New
OleDb.OleDbCommand("select max(nro_comprobante)+1 from
COMPROBANTE group by nro_comprobante ", conexion)
Dim drnrofactura As OleDb.OleDbDataReader
If conexion.State = 1 Then
conexion.Close()
End If
conexion.Open()
drnrofactura = cmdnrofactura.ExecuteReader()
Label2.Text = drnrofactura(0)
conexion.Close()
End Sub'El tipo de campo es string |
|
| ID | Asunto | Fecha | Nick | |
| 55765 | Re: realizar una consulta para extraer nro maximo (Resp: 55762) | 06/09/11 08:58 | yeremy.santana | | |
No se si será la solución, pero te dejo mí opinion: Sub BUSCARNROFACTURA()
Dim cmdnrofactura As New
OleDb.OleDbCommand("select MAX(nro_comprobante) AS nro
from COMPROBANTE", conexion)
Dim drnrofactura As OleDb.OleDbDataReader
If conexion.State = 1 Then
conexion.Close()
End If
conexion.Open()
drnrofactura = cmdnrofactura.ExecuteReader()
if not
isEmpty(drnrofactura("nro").value) then
Label2.Text = cstr(cint(drnrofactura("nro").value)+1)
else
Label2.Text = "0"
end if
conexion.Close()
End SubProgramación = conocimientos = poder [Editado: yeremy.santana, 06/09/2011 08:59:08] [yeremy.santana, 06/09/2011 09:00:48] [yeremy.santana, 06/09/2011 09:01:26] [yeremy.santana, 06/09/2011 09:02:03]
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
| ID | Asunto | Fecha | Nick | |
| 55775 | Re: realizar una consulta para extraer nro maximo (Resp: 55765) | 07/09/11 01:08 | GASTONALDO | | |
hola muchas gracias por responderme hice lo que me sugeriste pero me salta un error en la parte inferior de descripcion que me dice: "No se ha declarado el nombre isEmpty". me este volviendo loco este problema si te sugiere otra solucion te lo agradeceria. saludos.
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
| ID | Asunto | Fecha | Nick | |
| 55783 | Re: realizar una consulta para extraer nro maximo (Resp: 55775) | 08/09/11 21:16 | yeremy.santana | | |
Prueba cambiando if not
isEmpty(drnrofactura("nro").value) thenpor if not
drnrofactura("nro").value = NULL thenProgramación = conocimientos = poder
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
| ID | Asunto | Fecha | Nick | |
| 55789 | Re: realizar una consulta para extraer nro maximo (Resp: 55783) | 11/09/11 14:59 | GASTONALDO | |  |
hola: te explico que lo pude solucinar con este codigo : Sub BUSCARNROFACTURA() Dim cmdnrofactura As New OleDb.OleDbCommand("select MAX(nro_comprobante)AS nro from COMPROBANTE ", conexion)
'Dim drnrofactura As OleDb.OleDbDataReader If conexion.State = 1 Then conexion.Close() End If conexion.Open() 'drnrofactura = cmdnrofactura.ExecuteReader() Dim nro As String = cmdnrofactura.ExecuteScalar().ToString Label2.Text = nro conexion.Close() End Sub
pero que me pasa ahora me trae el nro maximo de nro_comprobante pero cuando quiero sumarle uno me dice que no acepta valores double como hago para sumarle uno e inclusive no me trae el valor maximo porque en la base de datos al ser el campo de tipo string me los ordena asi: oooo-ooo-1, 0000-000-10, 0000-000-9 y el maximo valor que me trae es 0000-000-9 y trendria que ser 0000-000-10 [Editado: TATOMUCCINI25@HO, 11/09/2011 22:27:07]
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |