¿Cómo puedo capturar la información de una caja de texto utilizando Visual Fox Pro?

Lo que quiero es hacer un contrato pra esto debo ingresar la fecha de inicio del contrato y la de finalización del mismo
La pregunta es como ingreso la esas fechas a una tabla por medio de una caja de texto y como tengo que configurar dichas cajas
para capturar la fecha de inicio del contrato lo hago asi
tabla.inicontrato=date()
Pero para ingresar la fecha en que este contrato vence como hago
Gracias
Respuesta
1
Primero creas dos cajas de texto, y en la propiedad value le colocas así
=date()
De ahí estas cajas de texto se inicializarán con el valor de la fecha actual del sistema, además serán del tipo de datos date.
Luego para guardar esto en tu tabla contrato se recomienda lo siguiente:
Se le contrato
Append blank
replace inicontrato with thisform.txtFechaInicio.value
replace fincontrato with thisform.txtFechaFin.value
Con esto se asume que tienes en tu entorno de datos abierta la tabla, este método es la más recomendada, por que recién guardas los datos a la tabla cuando el usuario haya ingresado en forma correcta, es decir, le haces validaciones necesarias, por ej que no ingrese la fecha final menor a la inicial etc, según tu ejemplo, así como entiendo has guardado directamente en la tabla la fecha actual, pero esto no te da oportunidad de controlar la carga del dato, siempre debes usar los objetos para guardar los datos, controlarlos y luego almacenar en las tablas respectivas, así tienes un mejor control, otra forma de almaenar los datos directamente a la tabla es de la forma siguiente:
thisform.txtFechaInicio.controlsource = tabla.inicontrato
con esto lo que haces es guardar directamente al campo de la tabla todo lo que modifiques en la caja de texto, pero tampoco tienes un buen control, de repente los usuarios ingresan datos, luego quieren deshacer y se te complica mas, la primera opción es la mas indicada
Gracias me fue de mucha ayuda pero ahora no se como mostrar esas fechas guardadas en la tabla en dos cajas de texto en el formulario
Por ejemplo para ver cuando fue contratado y cuando se termina el contrato lo intento hacer así pero no funciona que debo cambiar
Use tabla
thisform.text1.value=tabla.fechainicio
thisform.text2.value=tabla.fechafin
Como debo hacer
A simple vista está bien, pero recuerda que si abres la tabla el puntero se ubica en el primer registro, veifica si tienes cargado algun dato en ese registro, puedes usar el comando SKIP para moverte al siguiente registro, puedes crear un boton Siguiente>  que funcione asi
sele tabla
if !eof()
        skip
       thisform.text1.value = tabla.fechainicio
      thisform.text2.value  = tabla.fechafin
else
     messagebox("Ya esta en el ultimo registro",55,'Aviso')
Endif
Para ver que datos tienes en tu tabla visualiza el contenido completo usando el comando browse
use tabla
browse
Con esto veras que tienes cargado en tu tabla, luego de asegurarte bien que tienes los datos correcto prueba mi consejo, pero para mostrar datos al usuario de informaciones cargadas en las tablas se utilizan los informes (reportes)
Hola gracias pero no es eso lo que quiero es que tengo un formulario de búsqueda que al seleccionar el nombre del empleado me muestra toda su información(nombre, apellidos, edad... etc) en unas cajas de texto por eso quiero que hay mismo me muestre en una caja de texto el inicio del contrato y el final del contrato como lo puedo hacer es que como hice para mostrar los demás datos no me funciona y para los demás datos es esta la programación que tengo
if thisform.combo1.value=tabla.nomcolegio then
thisform.text1.value=tabla.nitcolegio
thisform.text2.value=tabla.nomcolegio
thisform.text3.value=tabla.pagcolegio
thisform.text4.value=tabla.dircolegio
thisform.text5.value=tabla.telcolegio
thisform.text6.value=tabla.nomrector
thisform.text7.value=tabla.cedrector
thisform.text8.value=tabla.dirrector
thisform.text9.value=tabla.telrector
thisform.text10.value=tabla.celrector
thisform.text11.value=tabla.emailrec
thisform.text12.value=tabla.ciudad
Endif
a simple vista parece estar bien el código, pero estas realmente seguro de que esa condición
if thisform.combo1.value=tabla.nomcolegio
endif
prueba dentro de esta condición colocar alguna bandera para certificarte de que entre en esta condición, o sea que la condición sea verdadera, porque el combo por defecto su value es texto, a menos que hayas cargado otros valores, entonces prueba y avisame primero si entra en este lugar, por que sino está entrando hay que corregir la condición if thisofrm.combo1.value = ....

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas