Lanzar un mensaje si no hay registros en subformulario

Como estas.
Estoy haciendo una basesilla para un librería, hora tengo un problemita te explico:
Tengo 3 tablas una ligada a un Formulario llamado "FormVentas"y la otra ligada a otro formulario llamado "ShoppingList", Bueno Dentro de FormVentas se encuentra como subformulario ShoppingList. Por medio de un botón Transfiero el registro activo del formulario FormVentas a el subformulario ShoppingList, por ultimo tengo otro botón de comando llamado "cmdVenta" que al presionarlo transfiere todos los registros que contiene el subformulario ShoppingList a la ultima tabla donde estarán todas la ventas realizadas.
Al presionar el botón cmdVenta se lanza un mensaje de sistema que dice que se va a realizar una transacción si se presiona sí, se vacían todos los registros de Shoppinglist a la tercer tabla, si se presiona no, entonces solo lanza otro mensaje que dice que no se realizo ninguna transacción.
Bueno es aquí donde necesito tu ayuda. Si el subformulario shoppinglist no contiene ningún registro y presiono el botón cmdVenta ocurren las operaciones que te menciono arriba, osea si presiono que si quiero realizar la transacción la realiza siendo que no hay ningún registro en shoppinglist.
Quisiera ver la posibilidad de que después de que lance el mensaje que se va a realizar una transacción y presione que si se haga una comprobación a shoppinglist para ver si contiene registros y que si los contiene funcione comúnmente y que si no los contiene lance un mensaje que diga que no hay ejemplares en shoppinglist.
Este es mi código del cmdVenta:
Private Sub cmdVenta_Click()
If MsgBox("Esta apunto de realizar una venta. ¿Esta seguro que desea realizar la transaccion?", vbQuestion + vbYesNo + _
 vbDefaultButton2, "Confirmar") = vbYes Then
DoCmd.SetWarnings False
DoCmd.OpenQuery "CtaAddShopListVentas"
DoCmd.SetWarnings True
MsgBox "La venta se Relizo con Exito", vbInformation, "Hecho ;)"
DoCmd.SetWarnings False
DoCmd.OpenQuery "CtaDelShoppingList"
DoCmd.Requery "Lista:"
DoCmd.SetWarnings True
Else
MsgBox "La venta no se ha realizado", vbExclamation, "¡Aviso!"
End If
End Sub
Y si pudieras checar este código para ver si funciona en lo que necesito, principalmente no se si este bien aplicada la función IsNull para un recordset:
Dim Rst As Recordset 
Set Rst = Me.RecordsetClone 
If IsNull(Rst) Then 
MsgBox "No hay ejemplares en la lista" & vbCrlf & "No hay transaccion que realizar", vbExclamation + vbOKOnly, "Alerta" 
'End If 
Set Rst = Nothing
1

1 respuesta

Respuesta
1
Tal vez seria bueno que usaras más código y menos docmd
puedes hacer más cosas si abres el recordset como preguntar cuantos registros tiene y hacer según tenga o no registros
lo que haces del null esta mal, usa rst. Recordcont para ver cuantos registros hay
nota: los report tiene un evento para cuando no tiene datos
Te Pido disculpas por tardarme tanto ya que como te decía apenas la estoy haciendo por lo que la tenia en partes, pero ya te la junte para que le eches un vistazo y pues me ayudes con ideas.
De verdad no sabes cuan agradecido estoy por tu ayuda y espero tu pronta respues y bueno ya te mando la base vía mail muchas gracias.
PD: no te preocupes que ya se que no me vas a realizar todo lo que le falta a mi base aun así te agradezco...
¿Pero me la enviaste?
Espera a que te ayude y cierra la pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas