hola, quisier que me ayudaran con una duda que tengo.
tengo un programa que al darle clic a un boton me guarda unos datos y los manda a imprimir por fecha, me imprime bien y todo, pero el ultimo dato que meti no me lo imprime, solo el ultimo dato no me lo imprime.
les pongo el codigo:
On Local Error Resume Next
Dim i As Integer
If Metida = True Then
Exit Sub
End If
Dim actual As Date
Dim J As Integer
i = 1
Call total
res = MsgBox("¿ESTA USTED SEGURO QUE EL PEDIDO ESTA CORRECTO?", vbYesNo, "IMPRESION/GUARDADO")
If res = vbYes Then
Do While i < MSHFlexGrid1.Rows
If Me.MSHFlexGrid1.TextMatrix(i, 3) = "" And Me.MSHFlexGrid1.TextMatrix(i, 4) = "" And Me.MSHFlexGrid1.TextMatrix(i, 5) = "" Then
Else
Dim db As New ADODB.Connection
Dim adoPrimaryRS As New ADODB.Recordset
Set db = New ADODB.Connection
Set adoPrimaryRS = New ADODB.Recordset
db.CursorLocation = adUseClient
db.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & "C:\WINDOWS\sucursal\sucursal.mdb" ' base path es direccionamiento a la base de datos
adoPrimaryRS.Open "Select clave,sucursal,pedido,existencia,vuelta1,vuelta2,v uelta3,fecha,total from pedidos", db, adOpenStatic, adLockOptimistic
adoPrimaryRS.AddNew
adoPrimaryRS!clave = "NoVent"
adoPrimaryRS!sucursal = Label1
adoPrimaryRS!pedido = Me.MSHFlexGrid1.TextMatrix(i, 1)
adoPrimaryRS!existencia = Val(Me.MSHFlexGrid1.TextMatrix(i, 2))
adoPrimaryRS!vuelta1 = Val(Me.MSHFlexGrid1.TextMatrix(i, 3))
adoPrimaryRS!vuelta2 = Val(Me.MSHFlexGrid1.TextMatrix(i, 4))
adoPrimaryRS!vuelta3 = Val(Me.MSHFlexGrid1.TextMatrix(i, 5))
adoPrimaryRS!total = Val(Me.MSHFlexGrid1.TextMatrix(i, 2)) + Val(Me.MSHFlexGrid1.TextMatrix(i, 3)) + Val(Me.MSHFlexGrid1.TextMatrix(i, 4)) + Val(Me.MSHFlexGrid1.TextMatrix(i, 5))
adoPrimaryRS!fecha = Date
'adoPrimaryRS!hora = Time
'adoPrimaryRS!cantidad = Val(Me.MSHFlexGrid1.TextMatrix(i, 4))
'adoPrimaryRS!Total = Val(Me.MSHFlexGrid1.TextMatrix(i, 5))
adoPrimaryRS.Update
MSHFlexGrid1.TextMatrix(i, 3) = ""
MSHFlexGrid1.TextMatrix(i, 4) = ""
MSHFlexGrid1.TextMatrix(i, 5) = ""
MSHFlexGrid1.TextMatrix(i, 6) = ""
End If
i = i + 1
Loop
Else
End If
Dim db2 As New ADODB.Connection
db2.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & "C:\WINDOWS\Pollo Feliz\sucursal.mdb" & ";Persist Security Info=False"
actual = Date
rss.Open "select clave,pedido,vuelta1,vuelta2,vuelta3 from pedidos where clave like 'NoVent' and fecha = #" & Format(actual, "mm/dd/yyyy") & "# ", db2, adOpenStatic, adLockOptimistic
Open "\\SERVER\EPSONTM-" For Output As #1
Print #1, Tab(0); "PEDIDO DEL DIA";
Print #1, Tab(0); Date
Print #1, Tab(0); Time
Print #1, " "
Print #1, Tab(0); "Producto"; Tab(24); "V1"; Tab(31); "V2"; Tab(38); "V3 ";
Print #1, "________________________________________"
rss.MoveFirst
Do While Not rss.EOF
Print #1, Tab(0); rss!pedido; Tab(23); rss!vuelta1; Tab(30); rss!vuelta2; Tab(37); rss!vuelta3;
rss.MoveNext
Loop
db2.Close
Print #1, Chr$(&H1B); Chr$(&H64); Chr$(&H5);
Print #1, Chr$(29) + Chr$(86) + "0"
Print #1, Tab(6); "______________________________"
Print #1, Tab(6); "FIRMA DE LA CAJERA O ENCARGADO"
Print #1, Chr$(&H1B); Chr$(&H64); Chr$(&H5);
Print #1, Chr$(29) + Chr$(86) + "0"
Close #1
no se que este pasando, si me guarda bien todos los datos en la tabla, pero no me imprime solo el ultimo dato que se guardo en la tabla, si guardo solo 1 fila del grid me manda a imprimir un dato vacio