TABLEUPDATE( [nRows [, lForce]] [, cTableAlias | nWorkArea] [, cErrorArray] )
y tu
TABLEUPDATE(.T.,.T.,"v_ventas")
y me parece que debería ser
TABLEUPDATE(.T.,"v_ventas")
ya que el primer parámetro es un numero de 0 a 2 o .t. o .f. no son dos parámetros si no solo uno de los dos y el segundo parámetro es la referencia de la tabla, ahora otra cosa una vez que te da error deberías mostrar que error ocurrió para eso debes hacer uso de aerror que es un array que te devuelve los datos del error ocurrido y por último te recomiendo que cada tableupdate lo realices por separado, así si una de las tablas te da error ya sabes cual es, porque así solo sabes que hubo un problema pero no sabes en que tabla, son más lineas pero es más legible y fácil de mantener, otra cosa que veo que muestras un mensaje que espera una respuesta dentro de una transacción, si el usuario se fue al baño o a tomar un cafe puedes dejar a los demas usuarios bloqueados hasta que de aceptar, eso no debe ocurrir, así que no se debe poner mensajes que dependan de los usuarios en medio de una transacción, en todo caso tu método solo debe grabar si no pudo devuelve falso y recien determinas que hacer.Saludos
Revisa q use conexión de red de cableada ya que la inalámbrica suele dar esa clase errores en la pérdida de paquetes
Este problema me sucedió en 2005 coloque verificadores de data pero la sitúacion empeoró era que el terminal estaba con inalámbrica
Hola José!
Gracias por el dato. En este caso es una red cableada.
Saludos