PRB: Valor numérico no escrita en la tabla del cuadro de texto

Seleccione idioma Seleccione idioma
Id. de artículo: 138778 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

En esta página

Síntomas

Cuando coloque el punto de inserción en medio del campo numérico en un formulario y presiona ENTRAR, el valor mostrado se convierte en el valor entero de los dígitos a la izquierda del punto de inserción. Por ejemplo, si el valor del campo mostrado es 12345.678 y coloque el punto de inserción entre 2 y el 3 y presione ENTRAR, el nuevo valor mostrado se convierte en 12.000. Sin embargo, a diferencia del comportamiento al modificar directamente una tabla de FoxPro 2.6, el valor no se escribe en la tabla después de presionar la tecla ENTRAR.

Solución

Agrega un campo numérico de una tabla a un FoxPro para Windows, versión 2.6 de pantalla muestra los resultados truncados y escribe los cambios en la tabla tan pronto como mover fuera del campo. En Visual FoxPro, si cambia manualmente el campo, los cambios y actualizaciones de OrigenDelControl (ControlSource) se escriben en la tabla. Para forzar Visual FoxPro se comporte como FoxPro 2.6, debe utilizar el comando Reemplazar o habilitar el almacenamiento en búfer de datos. Ambos métodos se describen a continuación.

Utilizar el comando Reemplazar para editar directamente la tabla

  1. Agregue un cuadro de texto a un formulario y establezca su propiedad ControlSource a un campo numérico de una tabla.
  2. En el evento LostFocus del cuadro de texto, agregue estos comandos:
       REPLACE <fieldname> WITH This.Value
       This.Refresh
    						

El almacenamiento en búfer de datos

  1. Establezca la propiedad BufferMode del formulario o optimista pesimista al búfer.
  2. Agregue un cuadro de texto a un formulario y establezca su propiedad ControlSource a un campo numérico de una tabla.
  3. En el evento LostFocus del cuadro de texto, agregue estos comandos:
       REPLACE <fieldname> WITH This.Value
       =TABLEUPDATE(.T.)

Estado

Microsoft está investigando este comportamiento y publicará nueva información aquí, en Microsoft Knowledge Base, cuando esté disponible.

Más información

Si no desea que Visual FoxPro escribir los cambios en la tabla o mostrar el valor cambiado, coloque el código siguiente en el evento LostFocus del cuadro de texto:
   This.Refresh
				

Pasos para reproducir este comportamiento

  1. Agregar un campo numérico de una tabla a un formulario.
  2. Establezca ControlSource del cuadro de texto en un campo numérico de una tabla.
  3. Agregar botones de comando de dos, uno para omitir y uno para anterior. Para obtener un ejemplo que muestra cómo agregar botones de exploración o una barra de herramientas a un formulario, consulte en contacto con el siguiente artículo en Microsoft Knowledge Base:
    130683Cómo crear una barra de herramientas exploración reutilizable de propósito general
  4. Ejecutar el formulario.
  5. Coloque el punto de inserción entre dos números en el campo y presione ENTRAR.
  6. El valor mostrado en el campo se truncará al valor entero que se encuentra a la izquierda del punto de inserción.
  7. Para ver el valor de presentación volver al valor anterior, retroceder hasta el campo.
  8. Para ver que el nuevo valor no se escribe en la tabla, mueva el puntero de registro haciendo clic en Omitir y, a continuación, haciendo clic en anterior.

Propiedades

Id. de artículo: 138778 - Última revisión: sábado, 22 de febrero de 2014 - Versión: 1.1
La información de este artículo se refiere a:
  • Microsoft Visual FoxPro 3.0 Standard Edition
Palabras clave: 
kbnosurvey kbarchive kbmt KB138778 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 138778

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com