Pregunta: | 65133 - GET FOXPRO |
Autor: | lisandro cruz |
tengo una aplicacion de foxpro en ms-dos y necesito que el cursor se mueva hasta el final del get, digamos tengo:
n_cbar=space(25) @ n_x1+3,12 SAY 'C¢digo de Barra: ' GET n_cbar size 1,25 function 'B' valid fvcbar() read el problema aqui es que voy a pasar primeramente un codigo de barra de 16 digitos, lo tengo que validar y a continuacion uno de 9 pero cuando paso el de 16 entonces el cuersor me queda al inicio del get y no a continuacion del digito 16 |
Respuesta: | hancito2003 |
Hola.
Como veo, tratas de capturar dos entradas en una misma variable. Para esto puedo aplicar dos soluciones, ya que al final lo que realmente quieres es un codigo de barra de 25 digitos: Puedo crear una captura de 16 y otra captura de 9, dentro del mismo bucle, asi cuando capture la de 16 automaticamente saltara para la proxima y solamente sumo las variables: replace codigodebarra with variable1+variable2. o valido el codigo realizando una busqueda con la misma suma de variables. seek variable1+variable2 campoindice. y retorno con las variables vacias. Otra opcion es validar el contenido de la variable solo cuando la captura este totalmente llena. En vez de validar cada captura, como entiendo que haces y que considero que es lo que te hace volver el cursor al principio, puedo validar la captura despues de la segunda lectura. Para esto, en vez de validar que todo el campo este lleno y como el cursor siempre comienza por el principio, entonces solo valido que el ultimo caracter este lleno a modo de comprender que todo el campo este lleno. Suerte.- |