Comparar varios campos continuos

Hola! Tengo un problema. Estoy tratando de comparar montos de dos diferentes subformularios continuos, pero el código solo compará la primera linea, ¿cómo puedo hacer para que compare todos los datos?
Ejemplo:
Subformulario1 (Reporte de Viaje)
Concepto=Comida
Monto =100
Concepto=Hotel
Monto=200
Subformulario2 (Orden de Viaje)
Concepto=Comida
Monto=90
Concepto=Hotel
Monto=190
Los montos del reporte de viaje, siempre deberán ser menores que el de la orden de viaje; de lo contrario, se le envía un mensaje al usuario indicando que no es posible realizar su movimiento. Anexo código:
If Concepto.Value = "Comida" Then
If Forms!Catalogo_Viaticos_RV_Principal.Form!Catalogo_Viaticos_RV_OV_Detalle!Concepto.Value = "Comida" And Forms!Catalogo_Viaticos_RV_Principal.Form!Catalogo_Viaticos_RV_OV_Detalle!Monto < Me.Monto_Validado Then
MsgBox "El Monto Validado NO puede ser mayor al monto de la Orden de Viaje"
Monto_Validado = 0
Else
If Concepto.Value = "Hotel" Then
If Forms!Catalogo_Viaticos_RV_Principal.Form!Catalogo_Viaticos_RV_OV_Detalle!Concepto.Value = "Hotel" And Forms!Catalogo_Viaticos_RV_Principal.Form!Catalogo_Viaticos_RV_OV_Detalle!Monto < Me.Monto_Validado Then
MsgBox "El Monto Validado NO puede ser mayor al monto de la Orden de Viaje"
Monto_Validado = 0
Else
End If
End If
Con este código si compara sin problemas la primera linea de la orden de viaje, pero capturo una segunda linea, ya no compara todos los conceptos de la orden de viaje, ¿qué pued hacer?

1 Respuesta

Respuesta
1
tendrias que avanzar de linea en cada uno
form.recordset.movenext
pero no te recomiendo que hagas eso
usa un recorset con tu metodo el usuario vera que se mueven las cosas y seria muy lento, claro siempre puedes que no se vean me.paint =false
pero no es buena la manera usa algo asi, qaunque el ejemplo es para otra cosa
Dim r as recordset
set r = currentdb.openrecordset("Select * from Tabla")
        r!Stock=nz(r!stock)+cantidad
        r.update
        r.movenext
     next
end if

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas